SetEmbeddedFileAFRelationshipA

PDF/UA & accesibilidad

Descripción

El sufijo A indica el punto de entrada ANSI (char) de la DLL; la superficie ActiveX/COM expone únicamente la forma Unicode. El comportamiento es idéntico a SetEmbeddedFileAFRelationship y los argumentos de cadena se interpretan utilizando la página de códigos SetAnsiMode actual

Establece la clave AFRelationship en el diccionario de especificación de archivo de un archivo incrustado. ISO 14289-1 (PDF/UA-1) §7.11 la exige cuando se incluyen archivos incrustados en un documento PDF accesible

Sintaxis

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 uno del archivo incrustado. Intervalo válido: de 1 a EmbeddedFileCount
AFRelationshipLa relación del archivo incrustado con el documento. Debe ser uno de los siguientes valores, que distinguen entre mayúsculas y minúsculas:

Source — el archivo incrustado es el archivo de origen utilizado para crear el documento
Data — el archivo incrustado contiene datos utilizados por el documento
Alternative — el archivo incrustado es una representación alternativa del contenido del documento
Supplement — el archivo incrustado complementa el documento
Unspecified — la relación no se especifica (valor predeterminado cuando SetPDFUAMode está activo)

Valor devuelto

Devuelve 1 en caso de éxito. Devuelve 0 si el índice está fuera del intervalo, el valor AFRelationship no es uno de los cinco valores válidos o no hay ningún documento abierto

Observaciones

Cuando SetPDFUAMode está activo, PDF Library for Delphi establece automáticamente AFRelationship en Unspecified para cualquier archivo incrustado que aún no tenga la clave. Utilice SetEmbeddedFileAFRelationship antes de guardar para sustituir este valor predeterminado por una relación más específica

Llame a esta función después de añadir el archivo incrustado y antes de guardar el documento

Ejemplo

// 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;

Véase también

SetPDFUAMode, SetPDFAMode, AddFileAttachment, AddEmbeddedFile, EmbedFile, SetEmbeddedFileStrProperty