Docs de PDFiumPas

SaveAsPdfX Método

Esta entrada API conserva identificadores, firmas, bloques de código y términos PDF en su forma original.
Componente: TPdf  ·  Unidad: PDFium
Guarda el documento actual como un archivo conforme a PDF/X-1a:2001, PDF/X-3:2002 o PDF/X-4 mediante el posprocesado del PDF base con una actualización incremental que inyecta marcadores de formato de archivo PDF/X (familia ISO 15930)

Sintaxis

function SaveAsPdfX(const FileName: string): Boolean; overload;
function SaveAsPdfX(const FileName: string; const Options: TPdfXSaveOptions): Boolean; overload;

Descripción

SaveAsPdfX realiza primero el SaveAs normal y después superpone una actualización incremental sobre los bytes guardados que promociona el archivo a conformidad PDF/X — la familia de estándares de intercambio de impresión ISO 15930 usada en la industria de las artes gráficas. El posprocesado inyecta cinco clases de bytes en el flujo guardado:

El trailer se reescribe para añadir un array /ID. La salida permanece idéntica en bytes al resultado base de SaveAs hasta el final del PDF original; solo se añade la actualización incremental. Las dos sobrecargas difieren solo en cómo se pasa la configuración: la forma de solo nombre de archivo usa TPdfXSaveOptions.Default (PDF/X-4 + sRGB + /Trapped /False) con autocompletado de los campos Info / DocumentId desde FPDF_GetMetaText y FPDF_GetFileIdentifier

Devuelve True si tiene éxito. Devuelve False si falló el SaveAs base o si no se pudo acoplar la actualización incremental

Notas

Ejemplo

// PDF/X-4 simple con OutputIntent sRGB incluido
if Pdf1.SaveAsPdfX('C:\AdProof.pdfx.pdf') then
  ShowMessage('Saved PDF/X-4');

// PDF/X-1a con un perfil ICC CMYK personalizado (por ejemplo, FOGRA39)
var
  Opts: TPdfXSaveOptions;
begin
  Opts := TPdfXSaveOptions.Default;
  Opts.Conformance := pxc1a;
  Opts.IccProfileData := TFile.ReadAllBytes('C:\ICC\FOGRA39.icc');
  Opts.OutputCondition := 'Coated FOGRA39 (ISO 12647-2:2004)';
  Opts.OutputConditionIdentifier:= 'FOGRA39';
  Opts.RegistryName := 'http://www.color.org';
  Opts.Trapped := ptFalse;
  Pdf1.SaveAsPdfX('C:\AdProof.cmyk.pdfx.pdf', Opts);
end;

Véase también

SaveAsPdfXToStream, ValidatePdfX, PdfXConformance, SaveAsPdfA, SaveAsPdfE