GUITexture Stretched and quality is low

Hi Guys Im using GUITexture to show my buttons on the main menu. But they seem to be stretched and Low quality: I've saved them in photoshop using PNG (What's the best format to use in unity??) When i saved the textures in 256x256 they seem to get rid of the stretch problem ( a lot of blank space on the texture to make it fit 256 x 256 ) But the quality is still low (the PNG quality is good).

Is there anyway to use a custom size textures ? or they all need to be power of 2 ?? BTW, im using unity iPhone Thanks

The source format is irrelevant in the actual product, so the best format to use is .PSD; that way you can keep all layers, effects, etc. intact. The way textures appear in a build is determined by the compression type you're using in Unity. You need to use power of 2 on the iPhone if you want compression to work.