property AttachmentRelationship[Index: Integer]: WString; // solo lectura
Los associated files de PDF 2.0 (ISO 32000-2 §7.11.4) etiquetan cada especificación de archivo con un nombre /AFRelationship que indica cómo se relaciona el archivo incrustado con el contenido al que va adjunto: Source, Data, Alternative, Supplement, EncryptedPayload, FormData, Schema o Unspecified (Table 43). Las facturas PDF/A-3 y ZUGFeRD / Factur-X se apoyan en esta entrada para marcar el payload XML legible por máquina
La propiedad lee la entrada a través de la exportación nativa FPDFAttachment_GetAFRelationship y devuelve el token de nombre sin procesar como cadena Unicode. Devuelve una cadena vacía cuando la especificación de archivo no tiene entrada /AFRelationship, cuando la entrada no es un nombre o cuando el pdfium.dll cargado es anterior a la exportación (véase AttachmentRelationshipFeaturesAvailable)
La propiedad es de solo lectura. Para adjuntar archivos con una relación, use el escritor del lado Pascal de FPdfAssocFiles, que emite los mismos tokens de nombre
| Index | Integer. Ranura de adjunto basada en cero. Debe cumplir 0 <= Index < AttachmentCount; los demás valores lanzan un EPdfError (Incorrect attachment index) |
/EmbeddedFiles tienen índice; un archivo asociado referenciado únicamente desde un array /AF no es alcanzable a través de esta propiedad (véase AttachmentCount)Relationship de TPdfAttachmentMetadata, y TryGetAnnotationFileAttachment rellena el campo correspondiente en las anotaciones de adjunto de archivo
var
I: Integer;
begin
Pdf1.LoadFromFile('invoice-facturx.pdf');
for I := 0 to Pdf1.AttachmentCount - 1 do
if Pdf1.AttachmentRelationship[I] = 'Alternative' then
SaveInvoiceXml(Pdf1.AttachmentName[I], Pdf1.Attachment[I]);
end;