THotPDF.ScrubLoadedRedactionRemnants
読み込みドキュメントの墨消し後に残る私的データと到達不能オブジェクトを完全に削除します
Delphi 構文
function ScrubLoadedRedactionRemnants( out Report: THPDFSanitiseReport): Boolean;
説明
このメソッドは spRedactionCleanup サニタイズプロファイルを読み込み済みオブジェクトグラフ全体に適用します
Redact とファイル添付の注釈、trailer の document-information ディクショナリ、Catalog またはページの XMP メタデータ、私的な /PieceInfo メタデータ、embedded-file の name tree、associated file、portfolio、それらの分離された payload ストリームを削除します
その後、循環安全な到達可能性パスが、Catalog から到達できなくなったすべての間接オブジェクトを削除します。未使用のフォント、フォントプログラム、画像、Form XObject、メタデータストリーム、注釈、payload オブジェクトが対象で、生存オブジェクト番号は線形時間でコンパクト化されます
このメソッドは増分保存を無効化し、次の読み込みドキュメント保存で完全な書き直しを強制するため、削除されたバイトが以前のリビジョンに残ることはありません
無関係なアクション、ページコンテンツ、ナビゲーション、フォーム、注釈は保持されます。アクティブなコンテンツも削除する必要がある場合は、SanitiseLoadedDocument を使用してください
レポート
MetadataEntriesRemoved、RedactAnnotationsRemoved、EmbeddedFilesRemoved、PayloadStreamsRemoved、UnreachableObjectsRemoved、PriorRevisionBytesDiscarded がクリーンアップのテレメトリを提供します
例
var
Report: THPDFSanitiseReport;
begin
PDF.LoadFromFile('redacted-source.pdf');
PDF.ApplyLoadedRedactions;
if not PDF.ScrubLoadedRedactionRemnants(Report) then
raise Exception.Create('Redaction cleanup was rejected');
PDF.SaveLoadedDocument('redacted-final.pdf');
end;