ストリーム フィルター

PDF ストリームフィルタ

PDF ストリームはデータをエンコードするためにフィルタを使用します(ISO 32000-1:2008、§7.4)。フィルタは順番に適用され、ストリーム辞書内のフィルタ名オブジェクトで識別されます。

ASCII85Filter

ASCII85Filter は ASCII85Decode フィルタを実装しています(§7.4.3)。バイナリデータを印刷可能な ASCII85 文字としてエンコードし、テキストベースの PDF ファイルに組み込むために使用します。

ASCII85Filter filter = new ASCII85Filter();
byte[] encoded = filter.encode(rawBytes, null);
byte[] decoded = filter.decode(encoded, null);
String name = filter.getName().toString(); // "ASCII85Decode"

ASCIIHexFilter

ASCIIHexFilter は ASCIIHexDecode フィルタを実装しています(§7.4.2)。バイトを 16 進数文字のペアとしてエンコードします:

ASCIIHexFilter filter = new ASCIIHexFilter();
byte[] encoded = filter.encode(rawBytes, null);
byte[] decoded = filter.decode(encoded, null);

PdfFilter

PdfFilter は、すべての PDF ストリームフィルタ実装の抽象基底クラスです。ASCII85Filter と ASCIIHexFilter は PdfFilter を拡張し、encode() と decode() メソッドを実装し、さらに getName() を提供します。このメソッドはフィルタの PdfName を返します。

参照

 日本語