THotPDF.ScrubLoadedRedactionRemnants

Elimina de forma permanente los datos privados residuales y los objetos inalcanzables después del redactado de documentos cargados

Sintaxis de Delphi

function ScrubLoadedRedactionRemnants(
  out Report: THPDFSanitiseReport): Boolean;

Descripción

El método aplica el perfil de saneamiento spRedactionCleanup al grafo de objetos cargado completo

Elimina las anotaciones Redact y de adjuntos de archivo, el diccionario de información del documento del tráiler, los metadatos XMP del Catálogo o de la página, los metadatos privados /PieceInfo, los árboles de nombres de archivos incrustados, los archivos asociados, los portafolios y sus flujos de carga útil separados

A continuación, un pase de alcanzabilidad seguro frente a ciclos elimina cada objeto indirecto que ya no es alcanzable desde el Catálogo, incluidos fuentes no usadas, programas de fuente, imágenes, Form XObjects, flujos de metadatos, anotaciones y objetos de carga útil. Los números de objeto vivos se compactan en tiempo lineal

El método desactiva el guardado incremental y obliga al siguiente guardado de documento cargado a realizar una reescritura completa, por lo que los bytes eliminados no pueden sobrevivir en una revisión anterior

Las acciones no relacionadas, el contenido de página, la navegación, los formularios y las anotaciones se preservan. Use SanitiseLoadedDocument cuando el contenido activo también deba eliminarse

Informe

MetadataEntriesRemoved, RedactAnnotationsRemoved, EmbeddedFilesRemoved, PayloadStreamsRemoved, UnreachableObjectsRemoved y PriorRevisionBytesDiscarded proporcionan telemetría de limpieza

Ejemplo

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;

Véase también ApplyLoadedRedactions y Saneamiento de documentos cargados