Boa Tarde Ricardo, faço tudo na mão, vou colar o código de como esta.
 
procedure Tfrmcadordserv.BitBtn1Click(Sender: TObject);
const
CNegrito = #27#71; // Define Caracter Negrito;
SNegrito = #27#72; // Define Caracter Não Negrito;
CExpandido = #14;
SExpandido = #20;
var
  a: textfile;
begin
 
// Imprimindo Ordem de Serviço
 

assignfile(a,'c:\tmp\cupom.txt');
rewrite(A);
writeln(A,'=================================================================
==============');
writeln(A,'          BRANCO AUTO MECANICA - ESPECIALIZADA EM INJECAO
ELETRONICA           ');
writeln(A,'                AV. MESSIAS GONCALVES, 1363 - (17) 3325-8055
');
writeln(A,'=================================================================
==============');
write(A,CNegrito + CExpandido + format('%-29s',['ORDEM DE SERVICO N: ' +
formatfloat('00000',strtoint(edit1.text))]));
writeln(A,SNegrito + SExpandido + format('%10s',['DATA:
'+frmordserv.qrordserv.fieldbyname('data').asstring]));
writeln(A);
write(A,format('%-57s',['NOME DO CLIENTE: '+
qrcli.fieldbyname('nome').value]));
writeln(A,format('%-22s',['CELULAR: '+qrcli.fieldbyname('celular').value]));
write(A,format('%-57s',['ENDERECO: '+
qrcli.fieldbyname('endereco').value]));
writeln(A,format('%-22s',['BAIRRO : '+ qrcli.fieldbyname('bairro').value]));
write(A,format('%-57s',['CIDADE: '+ qrcli.fieldbyname('cidade').value]));
writeln(A,format('%-22s',['CEP.: '+ qrcli.fieldbyname('cep').value]));
write(A,format('%-35s',['TELEFONE: '+
qrcli.fieldbyname('telefone').value]));
write(A,format('%-22s',['CPF: '+ qrcli.fieldbyname('cpf').value]));
writeln(A,format('%-22s',['RG: ' + qrcli.fieldbyname('rg').value]));
writeln(A);
write(A,format('%-57s',['MARCA: '+
frmordserv.qrordserv.fieldbyname('marca').value]));
writeln(A,format('%-22s',['MODELO: '+
frmordserv.qrordserv.fieldbyname('modelo').value]));
write(A,format('%-35s',['COR: '+
frmordserv.qrordserv.fieldbyname('cor').value]));
write(A,format('%-22s',['PLACA: '+
frmordserv.qrordserv.fieldbyname('placa').value]));
writeln(A,format('%-22s',['KM DO VEICULO: '+edit3.text]));
writeln(A);
writeln(A,format('%-20s',['FUNCIONARIO: '+
frmordserv.qrordserv.fieldbyname('funcionario').value]));
writeln(A,'=================================================================
==============');
write(A,format('%-40s',['DISCRIMANACAO']));
write(A,format('%-10s',['QTDE']));
write(A,format('%-18s',['PRECO UNITARIO']));
writeln(A,format('%-10s',['PRECO TOTAL']));
writeln(A,'=================================================================
==============');
qrhistserv.first;
while not qrhistserv.eof  do
  begin
    write(A,format('%-40s',[qrhistserv.fieldbyname('servico').value]));
    write(A,format('%-10s',[qrhistserv.fieldbyname('qtde').value]));
 
write(A,format('%-18s',[formatfloat('##0.00',qrhistserv.fieldbyname('precoun
').value)]));
 
write(A,format('%-10s',[formatfloat('##0.00',qrhistserv.fieldbyname('total')
.value)]));
    writeln(A);
    qrhistserv.next;
  end;
writeln(A,'=================================================================
==============');
write(A,CNegrito + CExpandido + 'TOTAL R$: ');
writeln(A,format('%29.2f',[frmordserv.qrordserv.fieldbyname('total').asfloat
]));
writeln(A,SNegrito + SExpandido +
'===========================================================================
====');
writeln(A);
writeln(A);
writeln(A);
writeln(A);
//writeln(A,'_______________________________');
writeln(A,'    ASSINATURA DO CLIENTE');
closefile(A);
 
Tiago de Assis Pimenta
 
MSN:  <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]
Skype: tiagopimenta_skype
Gtalk: tiagopimenta
 

  _____  

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
nome de Ricardo Berti
Enviada em: terça-feira, 13 de fevereiro de 2007 09:14
Para: delphi-br@yahoogrupos.com.br
Assunto: Re: [delphi-br] [URGENTE] Formatação Impressão Matricial



Como você faz pra imprimir? faz tudo na mão ou usa alguma rotina ou
componente? Posta aí que agente te ajuda

Bom Código

Ricardo Berti

----- Original Message ----- 
From: Tiago de Assis Pimenta 
To: Grupo Delphi 
Sent: Monday, February 12, 2007 11:40 PM
Subject: [delphi-br] [URGENTE] Formatação Impressão Matricial

Galera, seguinte, preciso da seguinte informação.

Tem como eu usar o write para fazer o seguinte.

Na hora que chegar num determinado numero de caracter, ele pule para a
proxima linha, mais ou menos no estilo das Celulas do Excel ???

Por ex.: Eu reservo um espaço de 50 caracteres para Descrição do Serviço na
nota, se ele passar de 50, ele pula para a proxima linha, sem atrapalhar a
coluna preço.

Na nota ficaria assim

DESCRIÇÃO | PREÇO

TESTE TESTE TESTE TESTE TESTE
TESTE TESTE TESTE TESTE TESTE R$ 40,00

OUTRO TESTE R$ 20,00

Tem como ?

Tiago de Assis Pimenta

MSN: <mailto:tiagopimenta@ <mailto:tiagopimenta%40hotmail.com> hotmail.com>
tiagopimenta@ <mailto:tiagopimenta%40hotmail.com> hotmail.com
Skype: tiagopimenta_skype
Gtalk: tiagopimenta

[As partes desta mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]



 


[As partes desta mensagem que não continham texto foram removidas]

Responder a