PDFium Component Docs

SaveAsReproducible methode

Component: TPdf  ·  Unit: PDFium
Herschrijft het document zodat twee opslagen van dezelfde in-memory toestand byte-identieke uitvoer produceren

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

De objectvolgorde is al stabiel (oplopend objectnummer) en de afleiding van de content-hash /ID is deterministisch, dus de resterende non-determinisme is de wandklok /CreationDate en /ModDate die PDFium in /Info schrijft

StripDictionaryEntries verwijdert die tijdstempelsleutels uit de /Info-body, en de herbouwde trailer laat de bron-/ID weg (die is afgeleid van bytes met tijdstempels)

Onbereikbare objecten worden ook weggeveegd, net als bij SaveAsReachable, en objectnummers en generaties blijven stabiel

Policies and limits

Example

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

See Also

SaveAsReachable, SaveAs, SaveAsDeduplicated