function ExportObjectGraph(Stream: TStream; const Options: TPdfObjectGraphInspectOptions; out Report: TPdfObjectGraphReport): Boolean;
function SaveAsObjectGraphPatched(Stream: TStream; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean;
function SaveAsObjectGraphPatched(const FileName: string; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean;
ออบเจ็กต์ราก จำนวนออบเจ็กต์ที่ใช้งานอยู่ ออบเจ็กต์ที่ส่งออก และสถานะการตัดทอน ถูกส่งออกในซอง pdf-object-graph-v1 แบบมีเวอร์ชัน
ค่าแต่ละค่าถูกระบุว่าเป็น dictionary, array, สตริง literal หรือเลขฐานสิบหก, name, reference, null, Boolean, integer, real หรือ keyword
stream เปิดเผยจำนวนไบต์ที่เข้ารหัส และ digest แบบ SHA-256 เมื่อเปิดใช้ โดยที่ payload ยังคงถูกละไว้
ออบเจ็กต์ตรงและสมาชิกที่ถูกทำให้เป็นจริงจากคอนเทนเนอร์ ObjStm ใช้การแทนค่าแบบเดียวกัน
| MaxObjects | จำนวนออบเจ็กต์ที่ใช้งานอยู่สูงสุดที่เขียนก่อนที่ซอง JSON จะรายงาน truncated: true |
| MaxDepth | ความลึกการซ้อนของ array และ dictionary สูงสุดตั้งแต่ 1 ถึง 32 |
| MaxOutputBytes | ขอบบนแบบเด็ดขาดของสตรีมไบต์ JSON ที่เข้ากันกับ UTF-8 ทั้งหมด |
| MaxStringBytes | จำนวนไบต์สูงสุดที่เก็บจากสตริงหรือ name หนึ่งรายการของ PDF |
| IncludeStreamDigests | คำนวณ SHA-256 บนไบต์ของ stream ที่เข้ารหัสแล้ว โดยไม่ถอดรหัสหรือส่งออก payload |
ทุก TPdfObjectPatchOperation เลือกหมายเลขออบเจ็กต์ generation และคีย์ระดับบนสุดของ dictionary แบบเป๊ะ แล้วตั้งค่าหรือลบคีย์นั้น
การดำเนินการแบบ set ยอมรับค่าแบบมีชนิด null, Boolean, integer, real, name, text string หรือ indirect reference และไม่ยอมรับไวยากรณ์ PDF ดิบ
identity ของออบเจ็กต์ generation การอ้างอิง name การดำเนินการที่ซ้ำกัน และ dictionary เป้าหมายทั้งหมดถูกตรวจสอบก่อนที่ผลลัพธ์จะถูกส่งมอบ
คีย์ความยาวของ stream และห่วงโซ่ filter ไม่สามารถแพตช์ได้ เพราะการเปลี่ยนแปลงโดยแยกจากไบต์ที่เข้ารหัสจะทำให้ stream เสียหาย
ตัวเขียนต่อท้ายรีวิชันเพิ่มเติมหนึ่งรายการ สร้างกราฟที่ใช้งานอยู่ที่ได้ขึ้นมาใหม่ strict-load ผ่าน PDFium และเขียนสตรีมของผู้เรียกหรือแทนที่ไฟล์แบบอะตอมมิกเฉพาะหลังจากนั้น
AllowSignedDocument อย่างชัดแจ้ง
Options := TPdfObjectGraphInspectOptions.Default;
Pdf.ExportObjectGraph(JsonStream, Options, Report);
SetLength(Operations, 1);
Operations[0].Kind := popSet;
Operations[0].ObjectNumber := CatalogObjectNumber;
Operations[0].Generation := 0;
Operations[0].Key := 'Lang';
Operations[0].Value.Kind := povTextString;
Operations[0].Value.TextValue := 'en-US';
Pdf.SaveAsObjectGraphPatched('patched.pdf', Operations, Report);