PDFium Delphi Component Docs

ImportXFDF metodas

Komponentas: TPdf  ·  Modulis: PDFium
Perskaito XFDF (ISO 19444-1) dokumentą ir pritaiko formų laukų reikšmes bei anotacijas įkeltam PDF, kurdamas anotacijas atitinkamuose puslapiuose ir įrašydamas laukų reikšmes į widget anotacijas

Syntax

function ImportXFDF(const FileName: string): Integer; overload;
function ImportXFDF(Stream: TStream): Integer; overload;

Description

ImportXFDF analizuoja XFDF XML dokumentą ir jo <fields> bei <annots> skyrius pritaiko šiuo metu įkelto PDF failui

Kiekvienam <field> elementui kvalifikuotas (taškuotas) vardas sugretinamas su dokumento valdiklių anotacijomis, o reikšmė įrašoma į lauko /V įrašą. Žymimųjų langelių ir akučių laukams pateikta eksportuojama reikšmė naudojama atitinkamai įjungtos būsenos išvaizdai parinkti, todėl laukas atvaizduojamas kaip pažymėtas

Aiškiai tuščias <value> išvalo atitinkamą lauką, o praleista reikšmė jį palieka nepakeistą; giliai įdėti taškuoti laukų vardai išlaiko visą hierarchiją

Kiekvienam anotacijos elementui nauja anotacija kuriama puslapyje, nurodytame page atributo (nuo nulio). Sukūrus importuotojas užpildo Contents, Author (title), Name (NM), Subject, ModificationDate, CreationDate, Icon ir anotacijos vėliavėles iš atitinkamų XFDF atributų

Grąžina bendrą apdorotų laukų ir anotacijų skaičių

Anotacijų importas pritaiko RGB ir vidines spalvas, išlaiko aiškiai tuščius teksto laukus, dešimtaines koordinates analizuoja nepriklausomai nuo proceso lokalės ir atkuria kiekvieną žymėjimo keturkampį iš coords atributo

Skaitytuvas priima vardų srities priešdėlius turinčius elementus ir atributus, maišytus tekstinius ir CDATA mazgus, XML objektų nuorodas bei tarpams jautrų laukų ar anotacijų turinį; netinkamos skaitinės Unicode nuorodos atmeta XFDF įvestį

Praleistas anotacijos contents elementas palieka naujos anotacijos turinį nesamą, o aiškiai tuščias elementas įrašo tuščią reikšmę

rect atributas kiekvienai anotacijai yra privalomas: jei jo nėra, anotacija praleidžiama, o ne kuriama nulinio dydžio stačiakampiu

Analizę atlieka ranka rašytas XML skaitytuvas, o ne pilnas XML DOM, todėl ImportXFDF neįveda XML DOM priklausomybės

Remarks

Example

// Import field values and annotations from an .xfdf file
Imported := Pdf1.ImportXFDF('C:\Data\form.xfdf');
Pdf1.SaveAs('C:\Data\form_filled.pdf');

See Also

ExportXFDF, CreateAnnotation, Annotation, FormFieldInfo