Hola probablemente existan muchos "por que" a tu problema, los drivers de la impresora, algun bug de tu quick report. Y bueno tengo una solución rapida y sencilla de aqui a lo que le encuentras solucion a tu problema.
With Printer do
Begin
GetPrinter(ADevice,ADriver,APort,DeviceHandle);
if DeviceHandle <> 0 Then
Begin
DevMode := GlobalLock(DeviceHandle);
//GlobalUnlock(DeviceHandle);
end;
with DevMode^ do
begin
dmFields := dmFields or DM_PAPERWIDTH;
//dmPaperSize := DMPAPER_LETTER;
//dmPaperWidth := 1500;
dmPaperWidth := 1500;
dmPaperLength := 1500;
dmPaperSize := DMPAPER_USER;
dmFields := dmFields or DM_PAPERSIZE or DM_PAPERLENGTH or DM_PAPERWIDTH;
end;
GlobalUnlock(DeviceHandle);
Printer.SetPrinter(ADevice, ADriver, APort, DeviceHandle);
end;
deberas declarar algunas variables...
ADevice,ADriver,APort : array [0..255] of char;
DeviceHandle : THandle;
DevMode : PDeviceMode;
pero es lo más rapido a tu problema.Seguro jala.. aqui en mi trabajo lo uso.. ojalá te sirva
|