PDFium Delphi Component Docs

AttachmentRelationship Свойство

Компонент: TPdf  ·  Модуль: PDFium
Возвращает имя /AFRelationship встроенного файла по указанному индексу с нуля или пустую строку, если в спецификации файла этой записи нет

Syntax

property AttachmentRelationship[Index: Integer]: WString; // read only

Description

Связанные файлы в PDF 2.0 (ISO 32000-2 §7.11.4) помечают каждую спецификацию файла именем /AFRelationship, которое говорит, как встроенный файл соотносится с содержимым, к которому он прикреплён: Source, Data, Alternative, Supplement, EncryptedPayload, FormData, Schema или Unspecified (Table 43). Счета PDF/A-3 и ZUGFeRD / Factur-X полагаются на эту запись, чтобы пометить машиночитаемую XML-полезную нагрузку

Свойство читает запись через нативный экспорт FPDFAttachment_GetAFRelationship и возвращает исходный токен имени как строку Unicode. Пустая строка возвращается, когда в спецификации файла нет записи /AFRelationship, когда запись не является именем или когда загруженный pdfium.dll старше этого экспорта (см. AttachmentRelationshipFeaturesAvailable)

Свойство доступно только для чтения. Чтобы прикреплять файлы с relationship, используйте код записи на стороне Pascal в FPdfAssocFiles — он выдаёт те же токены имён

Parameters

IndexInteger. Слот вложения с отсчётом от нуля. Должно выполняться 0 <= Index < AttachmentCount; при других значениях возникает EPdfError (Incorrect attachment index)

Remarks

Example

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;

See Also

AttachmentName, AttachmentType, AttachmentDescription, ReadAttachmentMetadata, AttachmentRelationshipFeaturesAvailable