property AttachmentRelationship[Index: Integer]: WString; // read only
Associated files dle PDF 2.0 (ISO 32000-2 §7.11.4) označí každou specifikaci souboru názvem /AFRelationship, který říká, jak se vložený soubor vztahuje k obsahu, k němuž je připojen: Source, Data, Alternative, Supplement, EncryptedPayload, FormData, Schema nebo Unspecified (Table 43). Faktury PDF/A-3 a ZUGFeRD / Factur-X se na tento záznam spoléhají při označení strojově čitelného XML payloadu
Vlastnost záznam přečte přes nativní export FPDFAttachment_GetAFRelationship a vrátí surový name token jako Unicode řetězec. Prázdný řetězec dostanete, když specifikace souboru nemá žádný záznam /AFRelationship, když záznam není name, nebo když načtená knihovna pdfium.dll je od exportu starší (viz AttachmentRelationshipFeaturesAvailable)
Vlastnost je jen pro čtení. Chcete-li připojovat soubory s relací, použijte pascalský writer v FPdfAssocFiles, který vysílá úplně stejné name tokeny
| Index | Integer. Slot přílohy počítaný od nuly. Musí platit 0 <= Index < AttachmentCount; jiné hodnoty vyvolají EPdfError (Incorrect attachment index) |
/EmbeddedFiles mají index; přidružený soubor odkazovaný výhradně polem /AF přes tuto vlastnost dostupný není (viz AttachmentCount)Relationship struktury TPdfAttachmentMetadata a TryGetAnnotationFileAttachment vyplní odpovídající pole u anotací s připojeným souborem
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;