function ImportXFDF(const FileName: string): Integer; overload;
function ImportXFDF(Stream: TStream): Integer; overload;
ImportXFDF analisa o documento XML XFDF e aplica as suas
secções <fields> e <annots> ao
PDF atualmente carregado
Para cada elemento <field>, o nome qualificado
(com pontos) é comparado com as anotações widget do documento e o valor é
escrito na entrada /V do campo. Para campos de caixa de
verificação e botão de opção, o valor de exportação fornecido é usado
para selecionar a aparência de estado ligado correspondente, para que o
campo seja renderizado como marcado
Um <value> explicitamente vazio limpa o campo correspondente, enquanto um valor omitido o deixa inalterado; nomes de campos profundamente aninhados com pontos retêm a sua hierarquia completa
Para cada elemento de anotação, é criada uma nova anotação na página
indicada pelo atributo page (baseado em zero). Após a
criação, o importador preenche Contents, Author (title), Name
(NM), Subject, ModificationDate, CreationDate, Icon e as
flags de anotação a partir dos atributos XFDF correspondentes
Devolve o número total de campos e anotações processados
A importação de anotações aplica cores RGB e interiores, preserva campos de texto explicitamente vazios, analisa coordenadas decimais de forma independente da região do processo e restaura todos os quadriláteros de marcação a partir do atributo coords
O scanner aceita elementos e atributos com prefixo de espaço de nomes, nós de texto e CDATA mistos, referências a entidades XML e conteúdo de campo ou anotação sensível a espaços; referências numéricas inválidas a escalares Unicode rejeitam a entrada XFDF
Um elemento contents omitido deixa o conteúdo da nova anotação ausente, enquanto um elemento explicitamente vazio escreve um valor vazio
O atributo rect é obrigatório para cada anotação: se
faltar, a anotação é ignorada em vez de criada com um retângulo de
tamanho zero
A análise é realizada por um scanner XML escrito à mão em vez de um DOM XML completo, pelo que ImportXFDF não introduz qualquer dependência de XML DOM
SaveAs depoiscoords; os extremos de linha, os vértices de polygon/polyline e as listas de ink permanecem de leitura porque o PDFium não expõe setters correspondentes para essas matrizes numéricas
// Import field values and annotations from an .xfdf file
Imported := Pdf1.ImportXFDF('C:\Data\form.xfdf');
Pdf1.SaveAs('C:\Data\form_filled.pdf');