HPDFXFAWriteHeadlessPDF

Unit: HPDFXFAHeadless

function HPDFXFAWriteHeadlessPDF(Destination: TStream;
  const XDPBytes, TrueTypeFont: SysUtils.TBytes;
  const Options: TXFAHeadlessPDFOptions;
  Warnings: TStringList): TXFAHeadlessPDFResult;

Destination es propiedad del llamador y debe ser no nil; el documento preparado completo se escribe en su posición actual sin truncar contenido existente

XDPBytes suministra el template, los datasets y el estado de formulario persistido opcional; no se requiere un PDF de entrada preparado

Los campos choice preservan los pares export/display de /Opt y las selecciones /V e /I reales; los campos booleanos tienen estados /AP reales y los miembros radio comparten un padre por scope nativo de template y datos

Los draws de rectangle, line y arcos elípticos producen rutas nativas reales; los draws de imágenes PNG y JPEG en línea producen image XObjects nativos con aspect físico y máscaras alfa, como se describe en Gráficos e imágenes nativos

TrueTypeFont suministra la cara real incrustada en los recursos de apariencias Unicode; el llamador retiene la propiedad del arreglo, el stream, la lista de warnings y el cancellation token

Options asigna las dimensiones físicas de página, la política de edición, la ejecución de scripts y los presupuestos de recursos; Warnings puede ser nil, en cuyo caso los warnings se recogen temporalmente y la referencia de warnings devuelta es nil

Los errores de preparación del grafo, de parsing XML, de construcción de apariencias, de cancelación y de serialización del candidato dejan Destination sin cambios; un error WriteBuffer del destino puede producir escrituras parciales y no se revierte para streams arbitrarios

Los tipos de consumidores no soportados actualmente lanzan EHPDFXFAHeadlessError durante la preparación; los tipos soportados y el trabajo de integración restante están listados en la creación XFA automática

Options := TXFAHeadlessPDFOptions.Default;
Options.PageWidth := 300;
Options.PageHeight := 500;
Output := TMemoryStream.Create;
try
  ResultInfo := HPDFXFAWriteHeadlessPDF(Output, SavedXDP, FontBytes,
    Options, nil);
  Output.SaveToFile('native-xfa.pdf');
finally
  Output.Free;
end;

Guardar a un stream o archivo no lanza un lector externo ni exige una sesión de escritorio

Opciones y conteos de resultados aportan las referencias completas de los registros públicos