3

アプリに OpenSans が必要なので、Bold、ExtraBold、Italic、Regular、Light などを含む OpenSans の束全体をインポートしました。それらをMacのFontbook(使用するときにアドレス指定する必要がある正確な名前を確認するため)、ファイル構造のプロジェクトに追加し、ビルドフェーズでプロジェクトにも追加しました。

さて、奇妙なこと。UIFont で使用すると、OpenSans-Bold のみが機能します。残りは機能しません。OpenSans-Bold (正確には Fontbook によって指定された識別子) を使用すると、すべて正常に動作します。しかし、それを OpenSans-Regular や OpenSans-Light など、そのファミリーの何かに変更すると、UIFont で systemfont を取得し、Quartz で描画しても何も表示されません。

すべてのフォントがすべてのリストにあり、Fontbook からすべての識別子を確認しました (これが OpenSans-Bold を機能させることができなかった理由です) が、今は途方に暮れています。私が間違っている可能性があることは何ですか?

4

3 に答える 3

14

OpenSans Regular は just OpenSans、セミボールドはOpenSans-Semiboldなどです。

Font Book.app でフォントを選択Command + Iし、フォント情報を表示するものを選択します。上部の「PostScript 名」では、フォントの名前とコード内での呼び出し方法を確認できます。

また、フォントが実際にバンドルと plist に追加されていることを確認してください :)

于 2013-08-02T16:52:33.977 に答える
0

次のコード行を使用して、ttf ファイルによって提供されるフォントを確認できます。

このメソッドは UIFont クラスによって提供されます。

  • (NSArray *)fontNamesForFamilyName:(NSString *)familyName
于 2013-08-05T10:34:39.513 に答える
0

ファイルを適切な場所に追加し、次に plist ファイルに追加し、それらをすべて列挙して印刷し、PDF 名を取得してアクセスできるようにする必要があります。ほとんどの場合、間違った名前を使用しています。フォントには次の 3 種類の名前があります。

  • ファイル名
  • Font Bookのフォント名
  • PDF 名 - これは、コード内のフォントにアクセスするために使用するものです

この回答を参照してください: iOS アプリにカスタム フォントを追加して、実際の名前を見つける

于 2014-04-21T10:36:03.717 に答える