THotPDF.ScrubLoadedRedactionRemnants

Trwale usuwa pozostałości prywatnych danych i nieosiągalne obiekty po redakcji wczytanego dokumentu

Składnia Delphi

function ScrubLoadedRedactionRemnants(
  out Report: THPDFSanitiseReport): Boolean;

Opis

Metoda stosuje profil sanityzacji spRedactionCleanup do całego załadowanego grafu obiektów

Usuwa adnotacje Redact i załączników plików, słownik informacji o dokumencie z trailer, metadane XMP katalogu lub strony, prywatne metadane /PieceInfo, drzewa nazw plików osadzonych, pliki powiązane, portfele oraz ich odłączone streamy payloadów

Następnie przebieg osiągalności odporny na cykle usuwa każdy obiekt pośredni, do którego nie prowadzi już ścieżka od katalogu, w tym nieużywane czcionki, programy czcionek, obrazy, Form XObjects, streamy metadanych, adnotacje i obiekty payloadów. Numery żywych obiektów są kompakowane w czasie liniowym

Metoda wyłącza zapis przyrostowy i wymusza, aby następny zapis wczytanego dokumentu wykonał pełny ponowny zapis, więc usunięte bajty nie mogą przetrwać we wcześniejszej rewizji

Niepowiązane akcje, treść strony, nawigacja, formularze i adnotacje pozostają zachowane. Gdy usunięcia wymagają też aktywne treści, użyj SanitiseLoadedDocument

Raport

MetadataEntriesRemoved, RedactAnnotationsRemoved, EmbeddedFilesRemoved, PayloadStreamsRemoved, UnreachableObjectsRemoved i PriorRevisionBytesDiscarded dostarczają telemetrii czyszczenia

Przykład

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;

Zobacz też ApplyLoadedRedactions oraz Sanityzacja wczytanego dokumentu