SetEmbeddedFileAFRelationship
PDF/UA & accesibilidad
Descripción
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 TPDFlib.SetEmbeddedFileAFRelationship(Index: Integer; Const AFRelationship: WideString): Integer;
ActiveX
Function PDFlib::SetEmbeddedFileAFRelationship(Index As Long, AFRelationship As String) As Long
DLL
int DLSetEmbeddedFileAFRelationship(int InstanceID, int Index, const wchar_t * AFRelationship);
Parámetros
| Index | Índice de base uno del archivo incrustado. Intervalo válido: de 1 a EmbeddedFileCount |
|---|---|
| AFRelationship | La 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