|
THotPDF.UseObjectStreams
|
先頭 前へ 次へ |
|
対象となる間接オブジェクトを PDF 1.5 の
Delphi 構文: property UseObjectStreams: Boolean;
C++ 構文: __property bool UseObjectStreams;
Description UseObjectStreams が true(かつ UseXRefStream も true)のとき、EndDoc は対象となるすべての間接オブジェクト、辞書、配列、数値、名前、文字列、真偽値、null を、ISO 32000-1 7.5.7 に従って 1 つ以上の
UseXRefStream プロパティと自然に組み合わさり、最もコンパクトな PDF 1.5+ ライターパイプラインになります。ObjStm パッカーは、ストリームオブジェクト、暗号化辞書、trailer が指す Catalog / Info 辞書を圧縮せずに残すため、最小限の PDF パーサーでもドキュメントルートの特定と内容の復号が可能です
既定値: false(オプトイン) UseObjectStreams を true にしても、UseXRefStream がオフのとき(type-2 エントリは仕様上テキストの xref テーブルでは表現できません)や Version が PDF 1.5 未満のときは、黙って false にダウングレードされます
PDF/A-1 では強制オフになります。ISO 19005-1(PDF 1.4、条項 6.1.4)は、圧縮オブジェクトストリームと、それが乗るクロスリファレンスストリームを禁止しているためです。PDFACompliance が part-1 レベルを名指しすると EndDoc はクラシックな xref テーブルを出力します。PDF/A-2 と PDF/A-3(PDF 1.7)では利用可能なままです
コード例
サイズ削減 小さな間接辞書が大半を占めるドキュメント(複数ページドキュメント、注釈、AcroForm ウィジェット、構造ツリー要素、Optional Content レイヤー)では、通常 FlateDecode 後のファイルサイズの 20〜40% を節約できます。グラフィックスのみの 30 ページのスモークテストでは、14502 バイトから 8488 バイト(-41.5%)へ縮みます
関連項目 UseXRefStream, Compression, Version, PDF Filter Support
|