TPDFlibPrinter
Impresión, VCL, creación de documentos
Descripción
Proporciona una fachada de componente con el ciclo de vida conocido BeginDoc, Canvas, NewPage, EndDoc y Abort, pero crea un documento PDF en vez de enviar un trabajo a una impresora física
Declaración
Uses PDFlibPDFPrinter;
TPDFlibPrinter = Class(TComponent)Parámetros
BeginDoc | Inicia un nuevo documento PDF y expone la primera página mediante Canvas |
|---|---|
NewPage | Confirma el lienzo actual como una página PDF y abre el lienzo de la página siguiente |
EndDoc | Confirma la página final y escribe FileName cuando se ha asignado un destino |
Abort | Descarta el trabajo activo sin escribir su archivo de destino y restablece el componente a un documento vacío |
SetPageSize | Establece las dimensiones de papel vertical en puntos PDF antes de BeginDoc |
Properties
Canvas | El lienzo VCL activo entre BeginDoc y EndDoc o Abort |
|---|---|
FileName | Ruta de salida PDF opcional; un valor vacío conserva el resultado únicamente en LibraryInstance |
Title | Título del documento aplicado al iniciarse el trabajo |
DPI | Resolución de coordenadas del lienzo de 24 a 2400, con 96 como valor predeterminado |
CanvasOptions | Modo de importación de lienzo de -1 a 4; el valor predeterminado es el modo vectorial 2 |
Orientation | poPortrait o poLandscape; la orientación horizontal intercambia las dimensiones de papel configuradas |
PaperWidth, PaperHeight | Dimensiones de papel vertical de 1 a 14400 puntos PDF |
PageWidth, PageHeight | Dimensiones activas de solo lectura en píxeles del lienzo después de convertir el DPI y la orientación |
PageWidthPoints, PageHeightPoints | Dimensiones activas de solo lectura en puntos PDF |
PageNumber | Página actual con base uno durante un trabajo y cero durante la inactividad |
Printing, Aborted | Estado de ciclo de vida de solo lectura |
LibraryInstance | La instancia propia de TPDFlib para inspeccionar o seguir procesando el PDF completado |
LastErrorCode | El código de error subyacente de la biblioteca de la operación PDF más reciente |
Ejemplo
Printer := TPDFlibPrinter.Create(nil);
try
Printer.FileName := 'report.pdf';
Printer.BeginDoc;
Printer.Canvas.TextOut(72, 72, 'First page');
Printer.NewPage;
Printer.Canvas.TextOut(72, 72, 'Second page');
Printer.EndDoc;
finally
Printer.Free;
end;Observaciones
Las propiedades de configuración no pueden cambiar durante un documento activo y el uso indebido del ciclo de vida genera EPDFlibPrinter
El componente posee su biblioteca y lienzo, crea un documento por trabajo, conserva el completado y nunca abre diálogos ni accede a la cola del sistema
Use try/except alrededor del trabajo y llame a Abort solo mientras esté activo; los errores internos lo terminan y fijan Aborted