2010-11-19 16 views
20

Wie verwende ich benutzerdefinierte TTF-Schriftarten in meinen Cocos2d iPhone-Apps?Verwenden von benutzerdefinierten Schriftarten in Cocos2d

+0

Ich habe all dies getan und kann es nicht auf dem Gerät arbeiten, NUR auf dem Simulator! Wie bekomme ich es auf dem Gerät zu arbeiten? –

+0

Ich habe ein Q & A veröffentlicht, das die meisten Fallstricke löst, die bei der Verwendung einer benutzerdefinierten Schriftart in cocos2d auftreten. Überprüfen Sie es, wenn Sie Probleme beim Hinzufügen von benutzerdefinierten Schriftarten zu Ihrem Projekt haben. (http://stackoverflow.com/questions/14508675/how-can-i-add-a-font-to-my-cocos2d-ios-project-and-use-it-with-a-cclabeltf) – RLH

Antwort

54

Ich habe eine Weile nach diesem gesucht und entschieden, als Frage und Antwort für Leute zu veröffentlichen, die implementieren möchten.

Die Lösung ist ziemlich einfach.

  1. Finden Sie die gewünschten Schriftarten und laden Sie sie herunter. This website hat eine riesige Sammlung von freien Schriftarten.

  2. Fügen Sie die Schriftdateien zu Ihrem Projekt hinzu. alt text

  3. Fügen Sie die Schriftartnamen zu Ihrer Datei info.plist hinzu, indem Sie das folgende Array als Beispiel verwenden.

  4. Suchen Sie den Namen der Schriftart; Doppelklicken Sie auf die Schriftartendatei und verwenden Sie den Namen der Schriftart, die im Titel des Fensters angezeigt wird. In diesem Beispiel ist es "Action Man"

alt text

die Schriftart verwenden, um die Art und Weise nennen würden Sie normalerweise:

CCLabel* myLabel = [CCLabel labelWithString:@"Some Text" fontName:@"Action Man" fontSize:18]; 

Fügen Sie diese auf Ihre info.plist Datei:

<key>UIAppFonts</key> 
<array> 
    <string>Action Man Bold.ttf</string> 
    <string>AdineKirnberg-S.ttf</string> 
</array> 
+1

Warum machen das ein Cocos2D QA? UIAppFonts funktioniert in jeder alten iOS App, wo iOS> = 3.2.2 –

+0

Ich möchte hinzufügen, dass diese Methode auch mit .ttc funktioniert :) – magorich

18

In Cocos2D können Sie die Schriftart-Datei mit Ihren Ressourcen und dann in fontName einschließen: einfach die Dateiname. Zum Beispiel:

Dies ist oft einfacher als die Methode, die Hanaan veröffentlicht hat.

Sie sollten die exakt gleiche Dateinamen Großschreibung wie der Dateiname verwenden.

Sie müssen keine Fonts zu Ihrer info.plist hinzufügen, wenn Sie sie nur in Cocos2D-Bits verwenden.

Wenn Sie wie Confused feststellen, dass die Schriftart auf dem Simulator, aber nicht auf dem Gerät funktioniert, handelt es sich wahrscheinlich um einen Groß-/Kleinschreibungsfehler. Das iPhone ist Groß-und Kleinschreibung, der Simulator ist nicht.

+7

Dies ist nicht der Fall in cocos2d 2.0, CCLabelTTF wird nur UIFont verwenden, um die zu lösen Schriftart es will.Dies erfordert das Hinzufügen der TTF zur Info.plist. – bshirley

+0

@bshirley, mir auch vor demselben Problem in cocos2d 2.0, sagen Sie mir, wo ttf Schriftart Dateiname in Plist hinzufügen. – Guru

+1

@Raj - Antwort ist oben angegeben. Fügen Sie TTF dem Projekt als Ressource hinzu. Fügen Sie die Schriftartdatei zu dem Schlüssel info.plist UIAppFonts hinzu, der ein Array mit Zeichenfolgenwerten ist (z. B. "FooBar.ttf"). Stellen Sie sicher, dass Sie den SCHRIFTARTNAMEN im Code und nicht den Dateinamen verwenden. Wählen und prüfen Sie die Schriftart in Mac OS, um den tatsächlichen Schriftnamen zu ermitteln, der in der Datei codiert ist. (was "Foo Bar BOLD" sein könnte) – bshirley

0

Da diese Antworten veraltet sind, bin ich sicher, dass meine Frage/Antwort all denen da draußen helfen wird.

Importing fonts for cocos2dx iOS

dies ist für iOS und Android-Plattform Schrift Import, mit nur einer einzigen Zeile Code!

Verwandte Themen