2010-11-22 7 views
6

Sto tentando di aggiungere alcuni caratteri personalizzati a un'app per iPhone tramite UIAppFonts in Info.plist.L'aggiunta di più font a UIAppFonts sovrascrive l'uno con l'altro

È possibile raggiungere entrambi i nomi di carattere tramite codice, ad esempio MyFont-Bold e MyFont-Medium.

Il mio problema è che l'ultimo carattere in UIAppFonts serie sovrascrive l'altra, rendendo sia MyFont-Bold e MyFont-Medium rendono fuori MyFont-Bold se questa è l'ultima voce nella matrice plist. Trascinando MyFont-Bold come prima voce, entrambi i nomi dei font rendono MyFont-Medium.

L'elenco delle proprietà di estratto:

UIAppFonts 
    item 0 MyFont-Medium 
    item 1 MyFont-Bold 

sto chiamando il tipo di carattere con:

UIFont* applicationFontBold = [UIFont fontWithName:@"MyFont-Bold" 
               size:[UIFont buttonFontSize]]; 

UIFont* applicationFont = [UIFont fontWithName:@"MyFont-Medium" 
              size:[UIFont buttonFontSize]]; 

Chiunque provato ad aggiungere più tipi di carattere di una font-family?

risposta

4

Non so se è stato riparato, ma ho risolto il problema modificando effettivamente i nomi di famiglia di caratteri nei file .ttf, utilizzando l'editor di vim. Perché hai diversi tipi di font (Bold e Medium) ma in realtà la stessa fontfamily (MyFont) - il sistema li mescola. Quindi quello che ho fatto nel primo file - in realtà ho modificato la famiglia in MyFontA, e nel secondo file MyFontB (ovviamente ho avuto nomi diversi - questi sono solo per abbinare l'esempio sopra). Questo ha funzionato perfettamente.

0

Ho avuto un problema simile con più font della stessa famiglia di font. Ho scoperto che se ho visualizzato il file info.plist come codice sorgente, l'xml non è stato formattato correttamente, il che causa la registrazione di alcuni dei caratteri.