Ich habe ein Problem mit benutzerdefinierten Schriftarten in meiner iPad-Anwendung, wenn ich mehr als eine Schriftart derselben Schriftfamilie hinzufügen muss.
Grundsätzlich werden einige Schriften wie andere gerendert, besonders die fett gedruckten. In meinem Fall habe ich diese vier Schriftarten:
Tungsten-Medium (ok)
Wolfram-Schwarz (ok)
< stark> Tungsten-Bold
Tungsten-Semibold
Das System hat all dies gefunden. Ich habe kein Problem mit mittel oder schwarz , aber wenn ich das fett oder wähle Semibold Das Ergebnis ist die schwarze Schriftart!
Dieses Problem betrifft die nativen Komponenten wie UILabel und UITextField, aber auch HTML-Dokumente mit benutzerdefinierten CSS , die ich in meiner Anwendung verwende.
Ich habe alles richtig in den Projektressourcen und in der Info.plist-Datei eingerichtet, ich habe sogar versucht, die Schriften im ttf-Format zu konvertieren, aber das Ergebnis ändert sich nicht.
Ich benutze die iOS SDK 4.2 für und iPad-Anwendung, es ist wichtig zu wissen, dass vor diesem os (in 3.2) meine Schriften korrekt gerendert wurden!
Die einzige funktionierende Lösung, die ich bis jetzt gefunden habe, ist die Bearbeitung der Schriften und für jede eine andere Schriftfamilie , aber das bedeutet eine Menge Arbeit innerhalb des Codes und des HTML, also würde ich das vermeiden .
Was soll ich versuchen?
Ich habe eine Lösung gefunden, die andere Foren liest. Ehrlich gesagt, ich denke, es ist eher ein Workaround als eine echte Lösung.
Ich habe ein Font-Manager-Tool (Transtype pro) verwendet, um die Metadaten der Fonts zu bearbeiten. Ich habe eine spezifische "OT Font Familie" für jede Schriftart mit dem gleichen Wert des Feldes "PS font name" festgelegt. Dies vermeidet den Rahmen, um Schriften der gleichen Familie zu verwechseln, ohne den Code zu berühren.
Hässlich, aber es funktioniert.
Ich habe eine Methode erstellt, die Beschreibungen der Schriftarten im fontsArray einer bestimmten Familie liest und die entsprechende Schriftart zurückgibt.
%Vor%Tags und Links css objective-c ios4 ipad fonts