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;
Rotobjektet, antall aktive objekter, eksporterte objekter og avkutningstilstand sendes ut i den versjonerte pdf-object-graph-v1-konvolutten
Hver verdi identifiseres som en ordbok, array, litteral eller heksadesimal streng, navn, referanse, null, boolsk verdi, heltall, reelt tall eller nøkkelord
Strømmer eksponerer sitt kodede byteantall og, når aktivert, en SHA-256-digest, mens nyttelasten forblir utelatt
Direkte objekter og medlemmer materialisert fra ObjStm-containere bruker samme representasjon
| MaxObjects | Maksimalt antall aktive objekter skrevet før JSON-konvolutten rapporterer truncated: true |
| MaxDepth | Maksimal nestet array- og ordbokdybde fra 1 til og med 32 |
| MaxOutputBytes | Fast øvre grense for den komplette UTF-8-kompatible JSON-bytestrømmen |
| MaxStringBytes | Maksimalt antall bytes som beholdes fra én PDF-streng eller ett navn |
| IncludeStreamDigests | Beregner SHA-256 over kodede strømbytes uten å dekode eller eksportere nyttelasten |
Hver TPdfObjectPatchOperation velger et eksakt objektnummer, en generasjon og en nøkkel på toppnivå i ordboken, og setter eller fjerner deretter den nøkkelen
Sett-operasjoner godtar typede null-, boolske-, heltalls-, reeltalls-, navne-, tekststreng- eller indirekte referanseverdier og godtar aldri rå PDF-syntaks
Alle objektidentiteter, generasjoner, referanser, navn, duplikatoperasjoner og målordbøker valideres før utdata leveres
Strømlengde- og filterkjedenøkler kan ikke patches, fordi å endre dem uavhengig av de kodede bytene ville ødelegge strømmen
Skriveren legger til én inkrementell revisjon, rekonstruerer den resulterende aktive grafen, strenglaster den gjennom PDFium, og skriver først deretter til kallerens strøm eller erstatter en fil atomært
AllowSignedDocument er eksplisitt aktivert
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);