Changing background, font and style of buttons

i am developing a GUI for my game, but i cannot find any way of changing my background(putting a custom image), also when i am trying to change the font and style of a button text the button border is disappearing, please help

Unity’s GUI Skin page has lots of good info.

For the background, you can use:

    GUI.Label(new Rect(0, 0, Screen.width, Screen.height), customImage);

to put a custom image on the screen. You can play around with GUI.Label’s GUIStyle options to position and scale it as you want.

Regarding buttons, it sounds like you’re losing the background image. You can get the default GUI textures from here and reassign them, or assign them to custom styles you create.

There are also commercial tools like Unity GUI Helper that could make it much easier.

And here’s a tutorial on creating custom GUISkins: http://forum.unity3d.com/threads/113055-Creating-Custom-GUI-Skins-PART-ONE