5

異なるスタイルのフォントがいくつかあります。たとえば、「MyFont_default.otf」、「MyFont_italic.otf」、「MyFont_bold.otf」などです。

通常、TextViewのフォントは次のように設定します。

Typeface tf=Typeface.createFromAsset(context.getAssets(), "MyFont_italic.otf");
textView.setTypeface(tf);

そして私の質問は、これらすべてのフォントを1つのフォント、たとえば「MyFont」に結合することは可能ですか。XMLレイアウトファイルで定義されたTextViewスタイル(斜体、太字)に応じて、TextViewは適切に表示されます。フォント?

4

2 に答える 2

2

コメントするのに適切な評判はありませんが、そのアプローチが機能していることは確認できます。FontForge(Windowsで利用可能なバイナリ)の使用:

  1. FontForge(Regular、Bold、Italic)を使用して複数の.otfファイルを開きます。
  2. フォントの「通常」バージョンを表示しているウィンドウを必ず選択してください
  3. そのウィンドウから[ファイル]>[ttcを保存]を使用します
  4. 実際に他のサブフォントが保存ダイアログに一覧表示されていることを確認してください(太字、斜体)
  5. このttcファイルをAndroidで保存して使用します

TextViewに表示されるhtmlテキストでテストしました: <b>Test</b> Test <i>Test</i>->「テストテストテスト」これはAndroid 2.3.7では以前は機能しませんでしたが、このttcフォントでは、テキストの3つのバージョンすべてが完全に表示されます。

私が言ったように、エクスポートするときは通常のフォントを選択することが重要です。これは、Androidが「デフォルト」として使用するフォントだからです(最初に太字バージョンからエクスポートしましたが、すべて太字でした)。

于 2014-02-12T17:39:08.700 に答える
1

ある種のフォントエディタを使用して、フォントを1つのファイルに結合します。多くのフォントには、1つのファイルに複数のスタイルが含まれています。これは、この場合に必要なものです。

于 2012-04-17T13:52:56.237 に答える