Ir ao topo

Tecnobyte

Logomarca da Tecnobyte
Contato por WhatsApp

WhatsApp

(69) 3421-6756

Contato por Telefone

(69) 3421-6756

(69) 3421-6757

Enviar mensagem

Enviar

mensagem

Contato por Facebook

Facebook

Atendimento de segunda a sexta, das 08h00 às 19h00 (horário de Brasília).

Delphi - Impressão

Como imprimir caracteres acentuados diretamente para a impressora?

Banner
{ Usando comandos da impressora podemos fazer isto de uma
  forma bastante simples. Quando enviamos o caractere ASCII
  número 8 (oito) para a impressora, a cabeça de impressão 
  retrocede uma posição, pois este caractere é o BackSpace.
  Então podemos imprimir a letra sem acento e, sem seguida,
  voltar e imprimir o acento desejado. Vejamos um exemplo:

  - Coloque um botão no form;
  - Altere o evento OnClick deste botão conforme abaixo:
}

procedure TForm1.Button2Click(Sender: TObject);
var
  F: TextFile;
begin
  AssignFile(F, 'LPT1');
  Rewrite(F);
  try
    { Regra: caractere sem acento + chr(8) + acento }
    WriteLn(F, 'Este e' + #8 + '''' + ' um teste.');
    WriteLn(F, 'Acentuac' + #8 + ',a' + #8 + '~o.');
    WriteLn(F, 'Vovo' + #8 + '^');
    WriteLn(F, 'U' + #8 + '''' + 'ltimo.');
    WriteLn(F, #12); // Eject
  finally
    CloseFile(F);
  end;
end;

Observações

Usando este recurso, a acentuação não fica excelente, mas melhora bastante.

O conteúdo desta página pode ajudar alguém? Compartilhe!