Fórum QuickReport Parada na Impressão sem dar Eject #278479

22/04/2005

0

Ola, estou querendo fazer algo que talvez seja improvável de se fazer, mas vamos la:

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

Atgomes

Responder

Posts

22/04/2005

Gandalf.nho

Parar em um determinado ponto numa folha solta sem ejetar (não formulário contínuo) acho que não dá mesmo, mas vc pode lançar mão de alguns truques para iniciar a impressão no ponto desejado da folha, o que é muito útil, por exemplo, em folhas de etiquetas para não desperdiçá-las.


Responder

Gostei + 0

22/04/2005

Aroldo Zanela

Ola, estou querendo fazer algo que talvez seja improvável de se fazer, mas vamos la: 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.

Colega,

Defina o tamanho do formulário pelo tamanho de cada cheque ao invés de 4 (quatro).


Responder

Gostei + 0

22/04/2005

Atgomes

[quote:e5795fe46e=´Aroldo Zanela´]
Ola, estou querendo fazer algo que talvez seja improvável de se fazer, mas vamos la: 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.

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.


Responder

Gostei + 0

22/04/2005

Atgomes

[quote:da577fff02=´Aroldo Zanela´][quote:da577fff02=´atgomes´]Ola, estou querendo fazer algo que talvez seja improvável de se fazer, mas vamos la: 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.

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.
:(


Responder

Gostei + 0

22/04/2005

Aroldo Zanela

Colega,

Na impressora está definida com este tamanho também? (Configuraçoes -> Impressoras -> Botão diretiro sobre a impressoras -> Propriedades)


Responder

Gostei + 0

22/04/2005

Aroldo Zanela

Colega,

Onde se lê: diretiro
Leia-se: direito


Responder

Gostei + 0

23/04/2005

Edilcimar

é verdade que ele ejetará porém ejetará no tamanho do papel, o que seignifica que ficará parado no ínicio do próximo cheque, eu utilizo isto para impressão de NF em papel contínuo com papel personalizado e funciona


Responder

Gostei + 0

23/04/2005

Edilcimar

só uma correção, eu não notei que era QR é que eu utilizo Trpinter


Responder

Gostei + 0

25/04/2005

Atgomes

só uma correção, eu não notei que era QR é que eu utilizo Trpinter


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.


Responder

Gostei + 0

25/04/2005

Atgomes

Bom vamos ao teste, ajustei o papel da impressora para o tamanho do cheque, e o que o quick me faz, imprime um cheque em uma folha da o eject e depois imprime o segundo cheque na outra folha e assim por diante isto usando o Quick.


Responder

Gostei + 0

25/04/2005

Gandalf.nho

Pelo que já vi e testei, esse truque de acertar o tamanho do papel para o tamanho de cada ´página´ para que não ejete, só funciona com formulário contínuo e não folha solta.


Responder

Gostei + 0

25/04/2005

Edilcimar

é só configurar a página para o tamanho do cheque e imprimir utilizando printer.canvas.textou(coluna,linha,texto);
eu não tenho exemplo de cheque, eu utilizo para nota fiscal tamanho personalizado


Responder

Gostei + 0

25/04/2005

Aroldo Zanela

Bom vamos ao teste, ajustei o papel da impressora para o tamanho do cheque, e o que o quick me faz, imprime um cheque em uma folha da o eject e depois imprime o segundo cheque na outra folha e assim por diante isto usando o Quick.

Colega,

E se você destacar o formulário antes da impressão?


Responder

Gostei + 0

02/05/2005

Atgomes

é só configurar a página para o tamanho do cheque e imprimir utilizando printer.canvas.textou(coluna,linha,texto); eu não tenho exemplo de cheque, eu utilizo para nota fiscal tamanho personalizado



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.


Responder

Gostei + 0

02/05/2005

Atgomes

é só configurar a página para o tamanho do cheque e imprimir utilizando printer.canvas.textou(coluna,linha,texto); eu não tenho exemplo de cheque, eu utilizo para nota fiscal tamanho personalizado



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;


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar