PDFium Delphi Component Docs

SaveAsReachable メソッド

コンポーネント: TPdf  ·  ユニット: PDFium
カタログとトレーラーの /Info 辞書から到達可能な間接オブジェクトのみを保持する単一のクリーンなリビジョンとしてドキュメントを書き換えます

構文

function SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean;

function SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean;

説明

PDFium はまず現在のメモリ内ドキュメントの非増分コピーを書くため、書き換えは正規バイトから始まります

オブジェクトグラフが解析され、カタログからのドキュメント全体の到達可能性走査がすべての生存間接オブジェクトを収集します。ページツリー、ページリソース、フォント、画像、Form XObject、AcroForm、構造ツリー、アウトライン、名前ツリー、任意コンテンツ、メタデータ、出力インテント、関連ファイルを含みます

増分更新、ページマージ、修復保存によって到達不能になったオブジェクトは破棄され、出力はオブジェクトストリームもクロスリファレンスストリームもない単一のクラシックリビジョンです

オブジェクト番号と世代は保持されるため、生存クロスリファレンスは番号を振り直さずに有効なままです。到達不能オブジェクトは再構築されたクラシッククロスリファレンステーブルの空きエントリになります

再構築されたトレーラーは、参照されたオブジェクトが一掃を生き残った場合のみ /Root/Info/ID を引き継ぎます

ポリシーと制限

Pdf.SaveAsReachable('pruned.pdf', Report);
WriteLn('Kept ', Report.KeptObjectCount, ' pruned ', Report.PrunedObjectCount);

関連項目

SaveAs, SaveAsRepaired, SaveAsNormalizedContent