SetEmbeddedFileAFRelationshipA

PDF/UA & Acessibilidade

Descrição

O A final indica o ponto de entrada ANSI (char) da DLL; a superfície ActiveX/COM expõe apenas a forma Unicode. O comportamento é idêntico ao de SetEmbeddedFileAFRelationship e os argumentos de cadeia são interpretados utilizando a página de códigos atual de SetAnsiMode

Define a chave AFRelationship no dicionário de especificação de ficheiro de um ficheiro incorporado. Exigido pela norma ISO 14289-1 (PDF/UA-1) §7.11 quando são incluídos ficheiros incorporados num documento PDF acessível

Sintaxe

Delphi

Function DLSetEmbeddedFileAFRelationshipA(InstanceID, Index: Integer; AFRelationship: PAnsiChar): Integer;

DLL

int DLSetEmbeddedFileAFRelationshipA(int InstanceID, int Index, const char * AFRelationship);

Parâmetros

IndexÍndice de base 1 do ficheiro incorporado. Intervalo válido: 1 a EmbeddedFileCount
AFRelationshipA relação do ficheiro incorporado com o documento. Tem de ser um dos seguintes valores sensíveis a maiúsculas e minúsculas:

Source — o ficheiro incorporado é o ficheiro de origem utilizado para criar o documento
Data — o ficheiro incorporado contém dados utilizados pelo documento
Alternative — o ficheiro incorporado é uma representação alternativa do conteúdo do documento
Supplement — o ficheiro incorporado complementa o documento
Unspecified — a relação não é especificada (predefinição quando SetPDFUAMode está ativo)

Valor devolvido

Devolve 1 em caso de êxito. Devolve 0 se o índice estiver fora do intervalo, se o valor AFRelationship não for um dos cinco valores válidos ou se nenhum documento estiver aberto

Observações

Quando SetPDFUAMode está ativo, a PDF Library for Delphi define automaticamente AFRelationship como Unspecified para qualquer ficheiro incorporado que ainda não tenha a chave. Utilize SetEmbeddedFileAFRelationship antes de guardar para substituir esta predefinição por um valor de relação mais específico

Chame esta função depois de adicionar o ficheiro incorporado e antes de guardar o documento

Exemplo

// PDF/A-3 archive that embeds an XLSX as the document's source data
var
  FileID: Integer;
begin
  PDF.SetPDFAMode(5);              // PDF/A-3b — allows arbitrary embedded files
  PDF.NewDocument;
  PDF.AddStandardFont('Helvetica');
  PDF.AddPage;
  PDF.PrintText(50, 750, 'Quarterly Sales Report');

  FileID := PDF.AddEmbeddedFile(
    'sales-Q1.xlsx',
    'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  PDF.AddFileAttachment('Source spreadsheet', FileID);

  // Mark the relationship: the spreadsheet is the source of the report
  PDF.SetEmbeddedFileAFRelationship(1, 'Source');

  PDF.SaveToFile('report-PDFA3b.pdf');
end;

Consulte também

SetPDFUAMode, SetPDFAMode, AddFileAttachment, AddEmbeddedFile, EmbedFile, SetEmbeddedFileStrProperty