I had the same problem and just solved it. Friend gave me a couple of fonts zipped, I unzipped and then the file sizes are zero kb and I couldn't install them into Font Book.
So I googled and found out that my friend should have used StuffIt Expander to zip. So he sent me the file again, and I used StuffIt Expander to unzip. I was then able to install the fonts into my Font Book.
However, the fonts are still not usable in my iOS app. So below is what I did:
I found out I need to convert the font, so I installed Fondu
http://fondu.sourceforge.net/
The installation ended up saying not successful, but later I was still able to use.
Then I realise I need Rosetta to run Fondu, so I looked at the instructions on this page.
Got my Snow Leopard CD out and install optional package
http://www.macobserver.com/tmo/article/snow_leopard_installing_rosetta/
Open Terminal and go to the directory where your font is. Type the command:
fondu [font file]
Then you will get a prompt asking if you want to save [font file].pfb
Choose yes.
Now in your XCode, add the pfb file into your project. Then go to info.plist and add the file to UIAppFonts (include the .pfb extension).
I tested the font in a UITableViewCell
cell.textLabel.font = [UIFont fontWithName:@"[font file]" size:30]; // do not include .pfb extension
And the font is showing up fine. I initially thought iOS will require a .ttf file but looks like .pfb is fine also.
Hope this helps.
Additional testing tips:
Once you add the UIAppFonts plist array as shown above add a breakpoint in your appDidFinishLaunchingWithOptions method and at the console type
po [UIFont familyNames]
That gets you a list of installed fonts so search for your font family name. Copy that and paste it into this:
po [UIFont fontNamesForFamilyName:@"familyname"]
This gets you the font name you reference in your code. I've not tried the [font filename] approach but this gives you the name the app uses to reference the exact font you want. This is important when a font contains a series of variants or you have multiple installed from the same family. For example helvetica has four variants so you can pick the right one this way:
lblMyLabel.font = [UIFont fontWithName:@"fontname" size:lblMyLabel.font.pointSize]
E.g.
lblMyLabel.font = [UIFont fontWithName:@"Helvetica-Oblique" size:lblMyLabel.font.pointSize]
This keeps the font point size you used originally for the label. I've also only had success once the view is loaded.