Ver Mensaje Individual
  #1  
Antiguo 30-06-2004
JOMABRI JOMABRI is offline
Miembro
 
Registrado: may 2004
Posts: 30
Reputación: 0
JOMABRI Va por buen camino
La historia de mi problema al imprimir.

saludos,

Mi problema comenzo cuando queria imprimir 2 comprobantes o recibos de pago en 1 hoja tamaño carta utilizandi QuickReport con XP, entonces realize lo siguiente:

1. Configure el QuickReport 8.5 x 5.5: En la vista previa salia perfecto, pero la imprimir solo mostraba un recibo por hoja.
2. Consulte al Foro y asi, construí mi rutina de impresion utilizando Printer.Cavas:

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;
Printer.BeginDoc;
Printer.Canvas.Font.Style:=[];
Printer.Canvas.Font.Size:=10;
Printer.Canvas.Font.Name:='draft';
Printer.Canvas.TextOut(0,0,'Hola');
Printer.EndDoc;

Hasta aqui funciono bien, Pero seguia con el problema de que la impresion era lenta.

3. Consulte al Foro y me aconsejaron imprimir directamente al puerto.

Pero antes de hacer esto, quisiera saber algo que me esta pasando con Printer.Canvas: El codigo que les muestro lo proble con 1 impresora LEXMARK 4227 PLUS y funciono a la perfeccion, pero cuando voy donde mi cliente, me doy cuenta que tiene impresora EPSON FX1180 y HP940C, en estas 2 impresoras la rutina que funcionaba perfecto en la primera, se desconfigura en las 2 ultimas, porque?????


Muchas gracias a todos por su colaboracion.
Responder Con Cita