で埋め込むので、以下の問題があります。フォントのセットを含むPDF
ファイルを受け取ります。これらのフォントはファイルに埋め込まれていません。ここでは簡単な例です:非埋め込みフォントをPDFにIText
私はPDF
内でこれらのフォントを埋め込むしたいと思いますので、彼らは自己完結型で、常に利用可能です。しかし、物事はそれほど単純ではないようです。私はPDF
の処理にIText
を使用しています。
私は、次の質問/回答を読み、試してみました:書籍の
- how-to-create-pdf-with-font-information-and-embed-actual-font-when-merging-them
- embed-truetype-fonts-in-existing-pdf
- embed-font-into-pdf-file-by-using-itext
- how-to-check-that-all-used-fonts-are-embedded-in-pdf-with-java-itext
- 章
16.1.4 Replacing a font
をiText in Action - 2nd Edition
- ...
しかし、私が一番近かったのは次の例でした:EmbedFontPostFacto.java
(本から来ています)。 Arial.ttf
ファイルを提供するときに私はArial
フォントを埋め込むことができました。
しかし、これで、他の例と同じように、私はそれを埋め込むためのフォントのソースファイルを必要とします。私の場合、私はソースファイルを持っていません。しかし、私はシステム上にそれらを持っているかもしれません。だから私はシステム上の私の利用可能なフォントを照会し、それが与えられたフォントに対応するかどうかを調べたいと思います。
GraphicsEnvironment e = GraphicsEnvironment.getLocalGraphicsEnvironment();
java.awt.Font[] fonts = e.getAllFonts();
for(java.awt.Font f : fonts){
System.out.println(f.getFontName());
}
として同類の何かしかし、私は、フォントファイル自体を埋め込むために使用されるRandomAccessFile
またはbyte[]
に与えられたjava.awt.Font
を変換することはできません。 PDF
にフォントを埋め込む別の方法がありますか?フォント自体のソースファイルはありませんか?