Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   largo de pagina, impresion en Printer.Canvas (https://www.clubdelphi.com/foros/showthread.php?t=6179)

jac000y 22-12-2003 17:14:48

largo de pagina, impresion en Printer.Canvas
 
tengo que imprimir facturas en el canvas por cuestiones de velocidad de impresion, y no logre aun setear el largo de pagina

si alguien lo sabe, gracias

aLe

marcoszorrilla 22-12-2003 17:29:14

Código:


procedure SetPaperSize (intAlto,intAncho : Integer);
{aqui se define el tamaño del papel}
var
  ADevice, ADriver, APort : array [0..255] of Char;
  ADeviceMode : THandle;
  DevMode : PDevMode;
begin
  with Printer do
      begin
        GetPrinter (ADevice, ADriver, APort, ADeviceMode);
        SetPrinter (ADevice, ADriver, APort, 0);
        GetPrinter (ADevice, ADriver, APort, ADeviceMode);
        DevMode := GlobalLock(ADeviceMode);
        if not Assigned(DevMode) then
            ShowMessage('Ha entrado en -> if not Assigned(DevMode) ...')
        else
            begin
              with DevMode^ do
                  begin
                    dmPaperSize:= DMPAPER_User;
                    dmPaperLength := intAlto;
                    dmPaperWidth:= intAncho;
                    dmFields := dmFields or DM_PAPERSIZE or DM_PAPERLength or DM_PAPERWidth;
                  end;
              GlobalUnLock(ADeviceMode);
              SetPrinter(ADevice, ADriver, APort, ADeviceMode);
          end;
      end;
end;

Un Saludo.


La franja horaria es GMT +2. Ahora son las 05:17:32.

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