Standard XFDF stamp appearance transport

Stamp-annotaties kunnen diens echte PDF appearance-streams en resource-dictionaries exporteren en importeren via het Adobe XFDF appearance-element

Het stamp-typed-xml-v1-profiel gebruikt base64-gecodeerde UTF-8 typed XML, zoals beschreven in de Adobe XFDF 3-specificatie; de gedecodeerde payload representeert PDF-objecten in plaats van een complete PDF- of FDF-bestand

Gemappede resources

De top-level DICT KEY="AP" bevat een vereiste normale N-Form-stream en optionele rollover R- en down D-streams

Forms behouden diens eindige vier-getallen BBox, optionele zes-getallen Matrix en ondersteunde resource-graaf, inclusief fonts met diens embedded programma's, afbeeldingen en soft masks, kleurruimtes, patronen, shadings, functies en graphics states

Getypeerde waarden omvatten DICT, STREAM, ARRAY, INT, FIXED, NAME, BOOL en NULL; dictionary-keys en name-waarden behouden diens semantische PDF-namen, en geldige bronnummer-tokens behouden decimale precisie

Stream DATA ondersteunt MODE="RAW" of MODE="FILTERED" met ENCODING="HEX" of zevensbits ENCODING="ASCII"; RAW behoudt de encoded bytes en diens Filter/DecodeParms, terwijl FILTERED gedecodeerde bytes installeert zonder verouderde filtering-metadata

Export gebruikt RAW hexadecimale data en regenereert stream Length vanuit echte bytes; geauthenticeerde versleutelde streams worden vóór uitwisseling gedecodeerd of ontsleuteld en correct versleuteld in de opgeslagen revisie

Gedeelde acyclische resources worden uitgeklapt als equivalente waarden en geïmporteerd met onafhankelijke objectreferenties; dit profiel behoudt geen referentie-identiteit

Embedded font-programmabytes en diens embedding-vlaggen worden behouden zonder license-bits te wijzigen of een ander fontprogramma te substitueren

API's en callbacks

Gebruik HPDFExportHeadlessAnnotationsXFDF en SaveAnnotationsXFDFToFile voor native transacties, of de begrensde overloads van HPDFXFDFExportAnnotations en HPDFXFDFImportAnnotations voor graaf-adapters in caller-eigendom

De bestaande Windows file-jobs en V1-callbacks en Linux V1-callbacks gebruiken diens bestaande annotatie-operaties en record-layouts

Capabilities behouden appearanceImport=false voor algemene annotatie-appearances en voegen stampAppearanceImport=true, appearanceProfile="stamp-typed-xml-v1", appearanceTypes=["stamp"], appearanceDataModes=["RAW","FILTERED"], appearanceEncodings=["ASCII","HEX"] en appearanceResources="acyclic-expanded-graph" toe

Transacties en limieten

Invoer-XML, base64, namen, stream-encoding, resource-types, semantische dictionary-keys en Form-geometrie worden gevalideerd vóór publicatie; misvormde data, cycli, uitgeputte cumulatieve limieten of annulering laten de complete transactie falen

XFDF-limieten dekken totale invoer/uitvoer, XML- en graaf-nodes, diepte, stream-opslag en working-reservaties over de annotatie-operatie heen

Import behoudt de huidige niet-opgeslagen graafstatus, AES R5/R6-security en geauthenticeerde certification-beperkingen; P1/P2 ontzeggen annotatiewijzigingen en P3 behoudt de originele signed prefix en echte signature-integriteit

Een geautoriseerde lege import geeft nul terug en behoudt exacte huidige PDF-bytes wanneer er geen niet-opgeslagen wijzigingen zijn; dirty graafwijzigingen worden opgeslagen zonder te worden weggegooid

Windows- en Linux callback-contexten adopteren een voorbereide PDF pas nadat PDF-uitvoer, JSON-resultaat-uitvoer en de finale annuleringscheck slagen; gefaalde of partiele callbacks behouden de vorige context, en de eerst gefaalde writer blijft sticky

Annotation-only-import accepteert lege fields-containers en waardeloze velddeclaraties als no-op-metadata; echte formulierwaarden en rich-veldupdates vragen de aparte geauthenticeerde form-data-operatie

Resterend werk

Algemeen annotatie-AP-transport, appearance-status-dictionaries, string-resource-waarden, niet-lege DEFINE/REF-referenties, cyclische grafen, Redact overlayappearance, annotatievervanging/-verwijdering en FDF-annotatie-uitwisseling blijven apart werk

Geometrische en tekst-annotaties zonder getransporteerde stamp-appearance behouden diens bestaande gedrag; deze operatie synthetiseert geen willekeurige annotatie-appearances en voert geen actions uit

De gedeelde begrensde adapter reserveert raw annotatie-keys en uitgeklapte AP-grafen vóór payloadconversie, en reserveert base64-whitespace en gedecodeerde DATA vóór het toewijzen van die representaties; PDF-naamconversie gebruikt lineaire passen met annuleringscheckpoints