PDFium Delphi Component Docs

מתודת SaveAsDeduplicated

Component: TPdf  ·  Unit: PDFium
כותב מחדש את המסמך כרוויזיה נקייה יחידה שסורקת תחילה אובייקטים בלתי ניתנים להשגה ולאחר מכן ממוטטת גופנים, תמונות ו-form XObjects תואמים על נציג משותף אחד

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 כותב תחילה עותק לא מצטבר של המסמך הנוכחי בזיכרון, ואז המעטפת מבצעת הליכת השגה ברמת מסמך ומפילה כל אובייקט בלתי ניתן להשגה בדיוק כמו SaveAsReachable

גופנים, תמונות ו-form XObjects עוברים אז טביעת אצבע: כל מילון מועמד, תת-הגרף המלא שלו הניתן להשגה ומטען הזרם הגולמי שלו מגובבים רקורסיבית, כך שכפילויות מתמזגות רק כאשר כל תוכנם זהה

כל הפניה צולבת שהצביעה על כפילות שמוזגה נכתבת מחדש לנציג השורד, ומספרי אובייקטים ודורות נשארים יציבים כך שכל הפניה צולבת שורדת נותרת תקפה

הפלט הוא רוויזיה קלאסית יחידה ללא זרמי אובייקטים וללא זרם cross-reference, וה-trailer שנבנה מחדש נושא את /Root, /Info ו-/ID קדימה

Policies and limits

Example

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

See Also

SaveAsReachable, SaveAs, SaveAsNormalizedContent