Versionsbestämda JSON-turer för objektgrafer
HotPDF kan strömma en fullständig inläst graf av indirekta objekt till versionsbestämd JSON och återskapa ett redigerbart dokument utan att platta ut PDF-värden till en jobbeskrivning
Schema och kompatibilitet
Det aktuella schemat HotPDF-object-graph-2 registrerar schemaVersion, minimumReaderVersion, PDF-version, trailerreferenserna Root och Info, varje valt indirekt objekt, identifierare för borttagna objekt samt typen snapshot eller inkrementell
minimumReaderVersion, PDF-version, trailer Root- och Info-referenser, varje valt indirekt objekt, raderade objektidentifierare samt typ av ögonblicksbild eller inkrement
Använd v2-ström-API:t för redigeringsresor eftersom v2 registrerar om varje strömnyttolast är rå filtrerad data eller avkodad data
Strömning och binära nyttolaster
ExportLoadedObjectGraphJSONToStream skriver objekt och rekursivt ordnade PDF-värden direkt till målströmmen utan att bygga en dokumentstor JSON-sträng
Råa eller avkodade strömbyte kan utelämnas, bäddas in som delad base64 eller skrivas som sidecar-filer i den angivna katalogen
Sidecar-namn är säkra bladnamn, publicering använder en syskonfil som är tillfällig följt av atomär ersättning, och import avvisar traverserings- eller absoluta sökvägar
Importören läser indatablock i fast storlek och materialiserar endast en toppnivå-objektpost åt gången samtidigt som gränserna för JSON-byte, objektantal och -nummer, värdedjup, strängbyte, enskilda strömmar och sammanlagda strömbyte verkställs
Ögonblicksbilds- och inkrementlägen
En ögonblicksbild exporterar hela grafen och ogjimReplace validerar ett kandidatdokument innan det byts in i målet
En inkrementell export innehåller endast smutsiga, måste-skriva och raderade objekt; ogjimUpdate validerar referenser mot unionen av den befintliga grafen och deltat och verkställer sedan genom transaktionsmekanismerna för inlästa grafer
Varje felformad värde, oupplöst referens, ogiltigt Catalog- eller Pages-träd, inkonsekvent direkt eller indirekt ström-Length, uttömd budget eller misslyckad sidecar-läsning lämnar målet oförändrat
Säkerhetsgräns
JSON-grafen innehåller PDF-objekt samt trailer Root- och Info-relationer, men exporterar aldrig lösenord, krypteringsnycklar eller aktivt säkerhetshanterartillstånd
En ersatt ögonblicksbild är därför okrypterad tills programmet uttryckligen konfigurerar utdataskydd innan det sparas