2009-08-19 16 views
7

FOPを使用してUTF-8文字でPDFを書き出そうとしています。フォントを埋め込む必要はありません。
次のコード:Apache FOP:PDFでUTF-8文字を表示(埋め込みなし)

<fo:block font="10pt Helvetica" text-align="justify" space-after="10pt" space-before="8pt" keep-with-previous="auto" keep-together.within-page="auto"> 
    <fo:block font-weight="bold" color="gray">Summary</fo:block> 
    <fo:block text-indent="1em" keep-with-previous="always"> 
    <fo:block text-indent="1em" space-before="4pt"> 
     <fo:block text-indent="1em" space-before="4pt">私はガラスを食べられます。それは私を傷つけません 
     </fo:block> 
    </fo:block> 
    </fo:block> 
</fo:block> 

はPDFで####################を生成します。 http://xmlgraphics.apache.org/fop/faq.html#pdf-characters

ドキュメントのプロパティ - >フォントの下に移動すると、Helveticaフォントが「エンコード:ANSI」と表示されます。これを変更する方法はありますか?

私が埋め込みを行っていた場合、Helvetica.ttfへのアクセスを持たないと、これを行うにはどうすればよいでしょうか?私はDejaVuSansを使ってみましたが、#記号の代わりに四角で終わります。

これはコマンドラインからの一度限りの使用ではなく(開始点になる)、既存のアプリケーションの拡張機能です。あまり複雑でなくてもUTF-8文字をサポートしようとしています。

答えて

7

AFAICTのPDF specificationに含まれるフォントには、ISO-Latin-1の文字のみが含まれています。 Annex D:文字セットとエンコーディングに定義されている文字以外の文字が必要な場合は、そのフォントを埋め込む必要があります。

関連する問題