Fórum QuickReport Parada na Impressão sem dar Eject #278479
22/04/2005
0
Gostaria de saber se tem como enviar uma página para a impressora e parar em um determinado ponto, imaginem uma impressão de cheques em um formulário A4, onde 4 cheques podem ser impressos, digamos que mande imprimir 3 cheques, gostaria que a impressora parasse no 3 e não desse o Eject. Lembrando que não quero usar impressoras matriciais.
A solução poderia ser para qualquer outro Report, Quick, Rave ou qualquer outro, agradeço desde ja o apoio.
Atgomes
Curtir tópico
+ 0Posts
22/04/2005
Gandalf.nho
Gostei + 0
22/04/2005
Aroldo Zanela
Colega,
Defina o tamanho do formulário pelo tamanho de cada cheque ao invés de 4 (quatro).
Gostei + 0
22/04/2005
Atgomes
Colega,
Defina o tamanho do formulário pelo tamanho de cada cheque ao invés de 4 (quatro).[/quote:e5795fe46e]
Caro amigo Aroldo Zanela, acho que ja fiz um teste como esse e não funcionou mas vou tentar novamente, para ver se da certo, Grato.
Gostei + 0
22/04/2005
Atgomes
Colega,
Defina o tamanho do formulário pelo tamanho de cada cheque ao invés de 4 (quatro).[/quote:da577fff02]
Caro amigo Aroldo Zanela, acho que ja fiz um teste como esse e não funcionou mas vou tentar novamente, para ver se da certo, Grato.[/quote:da577fff02]
Então amigo Aroldo Zanela, de fato a solução não resolve o meu problema, pois mesmo definindo o tamanho do papel como o tamanho do cheque ele de qualquer forma me da o Eject.
:(
Gostei + 0
22/04/2005
Aroldo Zanela
Na impressora está definida com este tamanho também? (Configuraçoes -> Impressoras -> Botão diretiro sobre a impressoras -> Propriedades)
Gostei + 0
22/04/2005
Aroldo Zanela
Onde se lê: diretiro
Leia-se: direito
Gostei + 0
23/04/2005
Edilcimar
Gostei + 0
23/04/2005
Edilcimar
Gostei + 0
25/04/2005
Atgomes
Vou fazer mais teste agora Aroldo Zanela, para ver se funcionará com o quick e edicilmar, usando o TPrinter vou continuar podendo imprimir windows sem problemas, você por acaso tem exemplo para me enviar ?
Grato.
Gostei + 0
25/04/2005
Atgomes
Gostei + 0
25/04/2005
Gandalf.nho
Gostei + 0
25/04/2005
Edilcimar
eu não tenho exemplo de cheque, eu utilizo para nota fiscal tamanho personalizado
Gostei + 0
25/04/2005
Aroldo Zanela
Colega,
E se você destacar o formulário antes da impressão?
Gostei + 0
02/05/2005
Atgomes
Infelizmente tive de deixar este problema de lado para resolver outras coisas mas tenho de resolver isso de alguma forma, Edcilmar, usei o exemplo que deixou aqui Printer.Canvas.TextOut, e mesmo usando esta impressão direta a impressora não obedece e EJETA a folha.
Gostei + 0
02/05/2005
Atgomes
EDICILMAR SEGUE O EXEMPLO QUE USEI:
procedure TForm1.Button1Click(Sender: TObject);
var
Linha: integer;
Tamanho: integer;
Coluna: integer;
begin
Database1.Connected := tRUE;
table1.Open;
Printer.Orientation := poPortrait;
Printer.BeginDoc;
Printer.Canvas.Pen.Width := 5;
Printer.Canvas.Font.Name := ´Times New Roman´;
Printer.Canvas.Font.Size := 10;
Linha := 20;
Coluna := 20;
Tamanho := Printer.Canvas.TextWidth(´a´);
Table1.First;
while not Table1.Eof do
begin
if Linha = 20 then
begin
Coluna := 20;
Printer.Canvas.TextOut(0, Linha, ´Relação de Clientes´);
Linha := Linha - Printer.Canvas.Font.Height + 5;
Printer.Canvas.TextOut(Coluna, Linha, ´Cod´);
Coluna := Coluna + (Tamanho * 5);
Printer.Canvas.TextOut(Coluna, Linha, ´Nome´);
Coluna := Coluna + (Tamanho * 30);
Printer.Canvas.TextOut(Coluna, Linha, ´Endereço´);
Coluna := Coluna + (Tamanho * 30);
Linha := Linha - Printer.Canvas.Font.Height + 5;
end;
Coluna := 20;
Printer.Canvas.TextOut(Coluna, Linha, Table1.FieldByName(´Codigo´).AsString);
Coluna := Coluna + (Tamanho * 5);
Printer.Canvas.TextOut(Coluna, Linha, Table1.FieldByName(´Nome´).AsString);
Coluna := Coluna + (Tamanho * 30);
Printer.Canvas.TextOut(Coluna, Linha, Table1.FieldByName(´ENDER´).AsString);
Coluna := Coluna + (Tamanho * 30);
Linha := Linha - Printer.Canvas.Font.Height + 5;
Table1.Next;
if Linha > Printer.PageHeight - 20 then
begin
Printer.NewPage;
Linha := 20;
end;
end;
Printer.EndDoc;
end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)