Impressao em cupom de vendas

03/09/2004

Oi galera.... Preciso novamente de mais uma ajudinha...

O problema: tenho um sistema que gera a impressão de um cupom de recibo, daqueles, rolos contínuos. Oproblema é que , ao terminar a impressão, há disperdício de muito papel, porque nao consigo parar a impressão, e não consigo definir um tamanho exato, pois a medida que hjá vários produtos para o recibo, maior fica o cupom.

Gostaria de saber se há como cancelar a impressão, tipo, após imprimir a última ´banda´ do cupom, parar a impressão e evitrar que seja disperdiçado o resto do papel que não for utilizado na impressão.

Agradeço desde já a quem puder me ajudar.

Atenciosamente,
Viviane =)


Vivipeder

Respostas

03/09/2004

Reginaldo174

geralmente impressões de cupons são feitos via programação. Dessa forma vc pode contolar a impressão como quiser e a impressora para quando termina a impressão.

veja um exemplo que imprime boleto bancário:

procedure TFmGerRec.BtBoletaClick(Sender: TObject);
Var
Impressora:TextFile;
begin
AssignFile(Impressora,´LPT1:´);
Rewrite(Impressora);
Writeln(impressora);
//Imprime Local de pagamento
Write(impressora,Format(´¬-50s´,[´ (PAGAVEL EM QUALQUER BANCO ATE O VENCIMENTO)´]));
//Imprime Data Vencto e pula para próxima linha
Writeln (impressora,Format(´¬-20s´,[´´+DatetoStr(DmDados.TbcontasRecRec_DataVencto.Value)]));
//pula três linhas
Writeln(Impressora);
Writeln(impressora);
Writeln(impressora);
//Imprime Data de Emissão e Número Documento e salta duas linhas
Writeln(impressora,Format(´¬-50s´,[´´+DatetoStr(DmDados.TbcontasRecRec_DataEmissao.Value)]));
Writeln(impressora,Format(´¬-52s´,[´´+InttoStr(DmDados.TbcontasRecRec_Numero.Value)]));
Writeln(impressora);
//Imprime valor do Documento e pula p/ Próxima linha
Write(impressora, Format(´¬-55s´,[ ´ ´]));
Writeln(impressora, Format(´¬-8.2m´,[DmDados.TbContasRecRec_Valor.Value]));
//Pula duas linhas
Writeln(impressora);
Writeln(impressora);
//Imprime informações de Responsabilidade do Cedente
Writeln(impressora, Format(´¬-50s´,[´ Neste Espaco Voce pode imprimir o Texto´]));
Writeln(impressora, Format(´¬-50s´,[´ De Responsabilidade do Cedente, comum em ´]));
Writeln(impressora, Format(´¬-50s´,[´ Diversos Bancos,Ex: ´]));
Writeln(impressora, Format(´¬-50s´,[´ -Cobrar Juros de 10¬/Mes Apos Vencimento´]));
// Pula duas Linhas
WriteLn(impressora);
Writeln(impressora);
//imprime informações do Sacado
Writeln(impressora, Format(´¬-50s´,[´´+DmDados.TbcontasRecRazao.Value+´-CGC/CPF´+Dmdados.TbContasRecCgc.Value]));
Writeln(impressora, Format(´¬-50s´,[´´+DmDados.TbContasRecEndereco.Value]));
Writeln(impressora, Format(´¬-50s´,[´ CEP´+DmDados.TbContasRecCEP.Value+´´+Dmdados.TbContasRecCidade.Value+´´+ Dmdados.TbContasRecEstado.Value]));
//Pula três linhas
Writeln(impressora);
Writeln(impressora);
Writeln(impressora);
CloseFile(impressora);
end;


Responder Citar

03/09/2004

Vivipeder

Agradeço a ajuda....

Porém, preciso de uma solução que não seja a impressão em modo texto, pois há uma imagem a ser impressa junto... Se houver alguma outra idéia, serei muito grata. Obrigado mesmo assim.

Atenciosamente, Viviane


Responder Citar