Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Impresión papel A3 (https://www.clubdelphi.com/foros/showthread.php?t=5315)

triskel 17-11-2003 17:10:43

Impresión papel A3
 
Hola delphian@s

Tengo que imprimir un listado en un papel A3, necesito imprimirlo directamente.
El problema es que no soy capaz de decirle a la impresora que el papel que es A3. ¿Como puedo hacerlo?

Este es el códifgo que utilizo para la impresión.

Printer.GetPrinter(Device, Driver, Port, hDeviceMode);
Printer.SetPrinter(Impresora, Driver, Port, hDeviceMode);
Printer.Title := 'DOC 551';
Printer.Orientation := poLandscape;
Printer.BeginDoc;
With Printer.canvas do
Begin
Font.Name := 'Courier';
Font.Color := ClBlack;
Pen.Color := ClBlack;
Font.Size := 11;
TextOut(40, PosLinea, DMData.QImprDoc.FieldByName('PAIS').AsString) ;

End ;

Gracias por la ayuda

roman 17-11-2003 18:27:12

Haciendo algunas pruebas me funciona este código:

Código:

var
  Device, Driver, Port: array[Byte] of Char;
  DeviceMode: THandle;
  DevMode: PDeviceModeA;

begin
  Printer.GetPrinter(Device, Driver, Port, DeviceMode);
  DevMode := Windows.GlobalLock(DeviceMode);
  DevMode.dmPaperSize := DMPAPER_A3;
  Printer.SetPrinter(Device, Driver, Port, DeviceMode);
  Windows.GlobalUnlock(DeviceMode);
end;

que trabaja sobre la impresora actualmente seleccionada y sólo si ésta puede manejar dicho tamaño de papel.

// Saludos


La franja horaria es GMT +2. Ahora son las 22:51:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi