PDFium Delphi Component Docs

SaveAsDeduplicated metod

Component: TPdf  ·  Unit: PDFium
Skriver om dokumentet som en enda ren revision som först sveper bort onåbara objekt och därefter slår samman kompatibla teckensnitt, bilder och form-XObjects till en gemensam representant

Syntax

function SaveAsDeduplicated(Stream: TStream; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean;

function SaveAsDeduplicated(const FileName: string; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean;

Description

PDFium skriver först en icke-inkrementell kopia av det aktuella dokumentet i minnet, därefter gör wrappern en nåbarhetsgenomgång av hela dokumentet och kastar varje onåbart objekt, precis som SaveAsReachable

Teckensnitt, bilder och form-XObjects fingeravtryckas sedan: varje kandidatordbok, dess fullständiga nåbara delgraf och dess råa strömpayload hashas rekursivt, så att dubbletter slås samman endast när deras hela innehåll är identiskt

Varje korsreferens som pekade på en bortsammanlagd dubblett skrivs om till den överlevande representanten, och objektnummer och generationer förblir stabila så att varje överlevande korsreferens förblir giltig

Utmatningen är en enda klassisk revision utan objektströmmar och utan korsreferensström, och den ombyggda trailern för /Root, /Info och /ID vidare

Policies and limits

Example

Pdf.SaveAsDeduplicated('deduplicated.pdf', Report);
WriteLn('merged ', Report.MergedImageCount, ' images');

See Also

SaveAsReachable, SaveAs, SaveAsNormalizedContent