30 votes

Quelqu'un a-t-il réussi à utiliser des polices otf personnalisées sur l'iPhone?

Il semble qu'il existe quelques solutions de travail pour l'utilisation de polices de type vrai personnalisées (ttf) sur l'iPhone, notamment http://stackoverflow.com/questions/360751/can-i-embed-a-custom-font-in-an -iphone-application / 809307 # 809307 Cependant, cette méthode ne prend pas en charge les polices de type ouvert (otf).

Quelqu'un a-t-il trouvé un moyen d'utiliser les polices de caractères otf?

69voto

Rodo Points 832

Pour mon projet, j'ai voulu utiliser les polices opentype et en gros, j'ai utilisé cette méthode:

Ajoutez vos polices personnalisées fichier dans votre projet à l'aide de XCode comme une ressource Ajouter une touche à votre info.fichier plist (Polices fournies par l'application) Pour chaque police, entrez le nom complet de votre fichier de police (y compris l'extension) enregistrer les informations.plist puis l'utiliser pour vos étiquettes (ex:)

UIFont* font = [UIFont fontWithName:@"Harrowprint" size:20];

Dans mon cas @"Harrowprint" a été le nom du fichier sans l'extension) et pas le nom de la police fournie par le Finder.

Mon bassin était un otf et cela a fonctionné...donc je suppose que c'est pris en charge...ou j'ai eu de la chance. Je vais tester une autre police..et vous tenir au courant..

références:

22voto

Joey Hagedorn Points 2015

Devez-vous utiliser une police otf sur l'appareil ou pouvez-vous la convertir en ttf? Il est relativement simple de convertir une police OTF en police TTF à l'aide d'un outil tel que fontforge , ce serait peut-être une solution facile.

17voto

Alan McKean Points 159

J'ai eu du mal avec cela, aussi. Voici ce qui a fonctionné pour moi:

  1. Copiez les fichiers de police dans les Ressources.
  2. Vérifiez que les fichiers de police sont dans les "Phases de construction'->'Copier Bundle de Ressources" (Xcode mettre là pour moi quand j'ai ajouté les fichiers de Ressources. Si, pour une raison quelconque, ils ne sont pas là, les ajouter.
  3. Ajouter les noms de vos informations.fichier plist comme décrit ci-dessus. Inclure les extensions.
  4. Ouvrir le Livre des Polices, sélectionnez votre police et Preview-Show de la Police d'Infos et de regarder la "Famille", par exemple, 'Foo'
  5. Mettez ceci dans votre code quelque part et de définir un point d'arrêt pour vérifier le tableau des noms: NSArray *names = [UIFont fontNamesForFamilyName:@"Foo";
  6. Exécutez votre application et quand il se casse, cliquez-droit sur les noms de variable dans le débogueur. Cela va vous montrer les noms de polices à utiliser, par exemple: <__NSCFArray 0xe9c4da0>( Foo-100Italic, Foo-100 )
    Notez que mes noms de police n'ont pas été révélées correctement n'importe où d'autre, pas dans le nom de fichier, ni dans le Livre des Polices.
  7. Vous devriez être bon d'aller avec:
    myLabel.font = [UIFont fontWithName:@"Foo-100Italic" size:24];

8voto

etayluz Points 175

Cet article répond à votre question (cela a fonctionné comme un charme pour moi en utilisant OTF): http://codewithchris.com/common-mistakes-with-adding-custom-fonts-to-your-ios-app/

OTF est parfaitement pris en charge, pas besoin de convertir en TTF

3voto

Salman Points 178

En ce qui concerne la première réponse - la solution est correcte (c'est-à-dire simplement convertir la police en TTF) mais le logiciel proposé est un super tracas à compiler et à installer. Au lieu de cela, je viens de faire une recherche rapide sur Google et de l'utiliser à la place: http://www.freefontconverter.com/ et cela a parfaitement fonctionné.

(Assurez-vous également d'ajouter la police à votre fichier info.plist)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X