Problema com alinhamento no VDOPrint
02/06/2016
0
Estou tentando fazer a impressão dos cupons não fiscais, porém estou com um problema na hora de posicionar os elementos no papel.
Quando utilizo a propriedade Font.Align do VDOPrinter e alinho o elemento a direita, ele não aparece no papel, assim como quando uso o "taCenter" ele nao fica exatamente no centro.
http://prntscr.com/bbjdg3
Eu acho que tem a ver com o fato de a configuração do papel estar maior do que deveria ser! Alguem sabe como resolver isto? Obrigado.
Vitor Ferreira
Posts
07/06/2016
Robson Pinheiro
07/06/2016
Vitor Ferreira
AlignCenter(29, texto);
Print(00, (branco + FMForm.empresaQuery['nome']) + branco, True);
29 é o numero de caracteres que cabe na linha
texto é o numero de caracteres que vao ser digitados na linha (ps: texto: extended)
branco vai armazenar os espaços que depois vao ser inseridos para deixar no meio
var i : integer;
espaco: extended;
begin
branco := '';
espaco := (linha-texto)/2;
for i := 1 to Round(RoundDn(espaco)) do
branco := ' ' + branco;
end;
Utilizei a função RoundDn pra sempre arredondar pra baixo no caso de der números decimais. Ela não é nativa do Delphi.
espaco é os caracteres que sobrarão sem preencher, dividimos por 2 para colocarmos metade dos espaços à esquerda e a outra à direita.
Se conseguir resolver usando o outro método me avise!
22/06/2016
Robson Pinheiro
amigo como vc fez essa função RoundDn funcionar , não consegui :(
Clique aqui para fazer login e interagir na Comunidade :)