PDFium Delphi Component Docs

SaveAsReproducible Método

Componente: TPdf  ·  Unidad: PDFium
Reescribe el documento de modo que dos guardados del mismo estado en memoria produzcan una salida idéntica byte por byte

Syntax

function SaveAsReproducible(Stream: TStream; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean;

function SaveAsReproducible(const FileName: string; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean;

Description

El orden de los objetos ya es estable (número de objeto ascendente) y la derivación del /ID por hash de contenido es determinista, por lo que el no determinismo restante está en el /CreationDate y el /ModDate de reloj de pared que PDFium escribe en /Info

StripDictionaryEntries elimina esas claves de marca de tiempo del cuerpo de /Info, y el trailer reconstruido omite el /ID de origen (que deriva de bytes con marca de tiempo)

También se barren los objetos inalcanzables exactamente como en SaveAsReachable, y los números y generaciones de objeto permanecen estables

Policies and limits

Example

Pdf.SaveAsReproducible('stable.pdf', Report);
WriteLn('stripped ', Report.StrippedTimestampCount, ' timestamps');

See Also

SaveAsReachable, SaveAs, SaveAsDeduplicated