Native annotation XFDF-udveksling
HPDFHeadlessXFDF eksporterer mappede annotationer fra en indlæst native PDF-graf og forbereder XFDF-annotationsimporter som en uafhængig inkrementel revision
Brug HPDFExportHeadlessAnnotationsXFDF til UTF-8 XML-bytes og SaveAnnotationsXFDFToFile til at tilføje annotationer til et eksisterende dokument uden at ændre den indlæste kildegraf
Mapped annotationsprofil
Profilen mapper Text, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, StrikeOut, Squiggly, Stamp, Ink, Caret, FileAttachment, Sound, Redact og Link
Fælles værdier inkluderer side, rektangel, Unicode-indhold, forfatter, annotationsnavn, datoer, emne, flag, opacitet, farver og understøttede kant-properties
Typespecifikke værdier inkluderer firkant-koordinater, vertices, ink-gestures, linjeender og leader-geometri, FreeText intent/callout/fringe/default tekst-properties, Redact repeat-tilstand, URI- eller Named link-handlinger, remote GoToR-handlinger og navngivne eller eksplicitte lokale destinationer og GoTo-handlinger
Tomme farvekomponent-arrays bevarer transparente farver; Gray- og CMYK-kildefarver afbildes til XFDF RGB-værdier, og RGB-komponenter kvantiseres til formatets sekscifrede hexadecimale repræsentation
FileAttachment-eksport foretrækker Unicode-filnavnet og bevarer ekstern filmetadata, selv når der ikke findes en indlejret stream; indlejret fil- og lyddata dekodes til afgrænset kanonisk base64 og importeres som rigtige indirekte streams, inklusive tomme streams
Popup-annotationer repræsenteres som nestede popup-elementer og importeres med indirekte Parent-, Popup- og sidelinks; svar opløses i et andet gennemløb mod eksisterende og nyligt tilføjede annotationsnavne, inklusive fremadrettede referencer
Rich contents bevarer XHTML-namespacet, ordnet blandet tekst og nedarvede namespace-bindinger
Transaktioner og tilladelser
Importere tilføjer annotationer og afviser duplikerede navne, tvetydige eller manglende svar-mål og ugyldige mappede værdier inden publicering
En mislykket eller annulleret import bevarer destinationsfilen og den indlæste kildegraf; en succesfuld import efterlader også den indlæste kilde uændret, så indlæs den gemte fil, når du vil adoptere dens nye revision
Eksport kræver extraction-tilladelse, og import kræver annotationstilladelse; AES-256 R5/R6-sikkerhed forbliver i den gemte revision
Faktisk certificeringspolitik autentificeres gennem det native signatur-workflow: P1 og P2 forhindrer annotationsændringer, mens P3 tillader en annotationsrevision, der bevarer de originale signerede bytes
Grænser
THPDFHeadlessXFDFOptions afgrænser input/output-bytes, annotationsantal, graf- og XML-noder, dybde og arbejdslager med kooperativ cancellation
Mappede tal skal være finitære og inden for en absolut værdi af en million med yderligere begrænsninger for koordinatantal, opacitet, samplestørrelser og andre typede værdier
Hele dokumentets XML-admission tjekker encoding, namespaces, duplikerede attributter, entiteter og komplet struktur inden annotationsmapping; DTD- og ekstern entitetsbehandling er deaktiveret
Operationsgrænser
Standard stamp appearance-transport bevarer faktiske Form-streams og afgrænsede acykliske font-, image- og graphics-ressourcer gennem base64-typet XML
Generel XFDF appearance-container-syntaks, custom XFDF-dictionaries, XFDF-annotationserstatning/-fjernelse og vilkårlige XFDF-handlinger forbliver separat arbejde; binær FDF-udveksling leverer en separat PDF-objektgrafprofil til appearance-ressourcer og navngiven annotationserstatning
Annotation appearance-syntese og -rendering er separate operationer; import af geometriske og tekstproperties opretter ikke en AP-stream
Andre kilde-annotationsundertyper springes over under eksport og tælles med i resultatet; misdannede valgte mappede værdier fejler operationen uden delvist returneret XML
Den native Pascal-API virker på Windows og Linux; den versionerede Linux C ABI udstiller også callback-baserede JSON annotationsoperationer, og Windows file jobs og V1-callbacks udstiller samme mappede annotationsudveksling
Eksplicit annotationsfjernelse
Side- og navnebaseret annotationsfjernelse er en separat operation; at udelade en annotation fra importeret FDF eller XFDF sletter den ikke
Widget-felttræ-sletning og sikker sletning kræver separate operationer; inkrementel fjernelse bevarer tidligere PDF-bytes