Delphi - Tamaño de pagina en canvas

 
Vista:

Tamaño de pagina en canvas

Publicado por Daniel (1 intervención) el 01/08/2007 16:57:45
Estoy imprimiendo en una impresora de tickets, todo sale bien cuando la cantidad de lineas a imprmir son pocas, cuando supera cierta cantidad no las lista. Imprimo por medio del TCanvas.

este es el codigo. No se como especificar el tamaño de la pagina.

try
Printer.BeginDoc;
Imprimir;
Printer.EndDoc;
except
on E:Exception do
begin
Application.HandleException(Self);
Printer.Abort;
Exit;
end;
end;

procedure imprimir;
begin
with Printer do begin
qry.First ;
row:=100;
while not qry.Eof do
begin
texto:= trim(qry.fieldbyname('iduser').Asstring);
texto:= texto +' - ' + qry.fieldbyname('nombre').Asstring;
Canvas.TextOut(fx(0),fy(row +100),texto);
row:= row + 300;
qry,next;
end;
end;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Tamaño de pagina en canvas

Publicado por RICHARD (59 intervenciones) el 03/08/2007 09:21:46
Hola..prueba utilizando otra secuencia de escape...

algo asi

procedure TForm1.Imprimir;
var
Lineas : Integer;
ArchContrato : TextFile;

begin

TRY
AssignFile(ArchContrato,'c:\hjoli.txt');
Rewrite(ArchContrato);

Printer.PrinterIndex:=1;

FOR Lineas:=1 TO 8 DO
Writeln(ArchContrato,Chr(18) + chr(14)+ ' ');

Writeln(ArchContrato,Chr(27) + ' ' + '132424');

FOR Lineas:=1 TO 4 DO
Writeln(ArchContrato,Chr(8) + ' ');

//Writeln(ArchContrato,Chr(18) + ' ' + '03' + ' ' + ' Julio' + ' ' + '2007');
Writeln(ArchContrato,Chr(18) + ' ' +
FormatDateTime('dd',Now) + ' ' + FormatDateTime('mmmm',Now) +
StringOfChar(' ',25 -(Length(Trim(FormatDateTime('mmmm',Now))))) + FormatDateTime('yyyy',Now) );
//'03' + ' ' + ' Julio' + ' ' + '2007');

FINALLY
CloseFile(ArchContrato);
END;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Tamaño de pagina en canvas

Publicado por RICHARD (59 intervenciones) el 03/08/2007 09:23:44
disculpa..

AssignFile(ArchContrato,'c:\hjoli.txt');

esa linea debes cambiarla por

AssignFile(ArchContrato,'LPT1');
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Tamaño de pagina en canvas

Publicado por Daniel (7 intervenciones) el 14/09/2007 10:26:00
Es que no puedo usar assign(.. porque estoy enviando a una impresora de ticket en red

Alguna otro idea?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar