ホームページ  >  記事  >  Java  >  Apache FOP で中国語の文字をレンダリングするときに「\」を回避するにはどうすればよいですか?

Apache FOP で中国語の文字をレンダリングするときに「\」を回避するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-26 11:06:29182ブラウズ

How to Avoid

漢字をレンダリングするときに Apache FOP で #### を回避する

PDF ドキュメントを生成するための一般的なツールである Apache FOP では、頻繁に次のような問題が発生します。中国語の文字が、意図されたグリフではなく「####」として表示される問題。この問題を修正するには、次の 3 つの重要な手順に従う必要があります。

手順 1: FO ファイルでフォント ファミリを指定する

フォント ファミリを使用して目的のフォントを割り当てるFO ファイル内のプロパティ。この例では、SimSun フォントが使用されています。

<code class="xml"><fo:block font-family="SimSun">...</fo:block></code>

ステップ 2: FOP の設定ファイルでフォント マッピングを設定する

FOP の設定ファイル (通常は fop. xconf)、フォント ファミリを対応するフォント ファイルにマッピングします:

<code class="xml"><directory>/Users/furini/Library/Fonts</directory></code>

または特定のフォント マッピングの場合:

<code class="xml"><font embed-url="/Users/furini/Library/Fonts/SimSun.ttf">
  <font-triplet name="SimSun" style="normal" weight="normal"/>
</font></code>

ステップ 3: FOP を設定ファイルにポイントします

コマンドラインから FOP を呼び出す場合は、-c オプションを使用します:

$ fop -c /path/to/fop.xconf input.fo input.pdf

Java コードから:

<code class="java">fopFactory.setUserConfig(new File("/path/to/fop.xconf"));</code>

これらの手順を実装すると、 FOP は、生成された PDF で中国語の文字を正しくレンダリングします。ただし、設定で指定されたフォント ファイルが見つからない場合は、エラー メッセージが表示され、フォント設定を確認する必要があります。

以上がApache FOP で中国語の文字をレンダリングするときに「\」を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。