PDFium Delphi Component Docs

SaveAsReachable metod

Component: TPdf  ·  Unit: PDFium
Prepisuje dokument kao jednu čistu reviziju koja zadržava samo indirektne objekte dostupne iz kataloga i trailer rečnika /Info

Syntax

function SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean;

function SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean;

Description

PDFium prvo upisuje nepriraštajnu kopiju trenutnog dokumenta u memoriji kako bi prepis počeo od kanonskih bajtova

Zatim se raščlanjuje graf objekata i obilazak dostupnosti kroz ceo dokument, počevši od kataloga, prikuplja svaki preživeli indirektni objekat, uključujući stablo stranica, resurse stranica, fontove, slike, form XObjects, AcroForm, strukturno stablo, konture, imenovana stabla, opcioni sadržaj, metapodatke, output intents i pridružene fajlove

Objekti koji su ostali nedostupni zbog priraštajnih ažuriranja, spajanja stranica ili popravljenih čuvanja se odbacuju, a izlaz je jedna klasična revizija bez objektnih tokova i bez toka unakrsnih referenci

Brojevi i generacije objekata se čuvaju, tako da svaka preživela unakrsna referenca ostaje validna bez ponovnog numerisanja; nedostupni objekti postaju slobodni unosi u ponovo izgrađenoj klasičnoj tabeli unakrsnih referenci

Ponovo izgrađeni trailer prenosi /Root, /Info i /ID samo kada su referencirani objekti preživeli čišćenje

Policies and limits

Example

Pdf.SaveAsReachable('pruned.pdf', Report);
WriteLn('Kept ', Report.KeptObjectCount, ' pruned ', Report.PrunedObjectCount);

See Also

SaveAs, SaveAsRepaired, SaveAsNormalizedContent