Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 199 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Bom dia pessoal e boa semana.

Estamos desenvolvendo um sistema PDV e estamos utilizando a biblioteca PosPrinter na versão 1.0.0.193 baixada dia 15/02/24, esta biblioteca é a versão multi-thread na arquitetura x64 e pretendemos usa tanto a .dll quanto a .so.

Durante o processo de desenvolvimento testamos com a impressora EPSON TM-T20 e ainda testaremos com a Bematech MP-4200 TH e com a TANCA TP-650.

Até então a criação de cupons NFCe ou comandas tem sido tranqüila mas surgiram algumas dúvidas.

1. Ao imprimir o logotipo, usando tanto os métodos expostos pela biblioteca ou utilizando as TAGs testamos da seguinte forma:

// TAGs usadas ao invocar o método GravarLogoArquivo('d:\imagem.bmp')
<logo_imprimir>1</logo_imprimir> // Configura a Impressão ou não do Logo Tipo: 0-NÃO, 1-SIM (default = 1).
<logo_kc1>48</logo_kc1>          // Configura a posição KC1 do Logo a ser impresso. Ex: 0=48.
<logo_kc2>48</logo_kc2>          // Configura a posição KC2 do Logo a ser impresso. Ex: 1=49.
<logo_fatorx>1</logo_fatorx>     // Configura o aumento Horizonal do Logo, de 1 a 4.
<logo_fatory>1</logo_fatory>     // Configura o aumento Vertical do Logo, de 1 a 4.
</logo>                          // Imprime Logotipo já gravado na Impressora (use utilitário do fabricante).

ou

// TAG usada sem invocar o método GravarLogoArquivo.
<bmp>d:\imagem.bmp</bmp>         // Imprime Imagem BMP monocromática. Conteúdo pode ser: Path da Imagem, Stream em Base64 ou AscII Art (0 e 1).

Temos logotipos em tamanhos diferentes por isso teríamos que ajustá-las individualmente usando o FatorX e o FatorY, portanto a minha pergunta é, existe a possibilidade de carregar um logotipo e esticá-lo para a proporção limite da largura do cupom sem precisar utilizar o FatorX ou FatorY e mantendo a escala?

 

2. Ao utilizar o modo página para a impressão de QR Codes à esquerda tivemos o problema de que apenas a primeira linha de texto é colocada à direita e as subseqüentes são realinhadas para o início da mesma. As TAGs foram usadas da seguinte forma:

<mp>                                                         // Liga Modo de Impressão em Página (em memória).
	<mp_direcao>0</mp_direcao>                               // Direção Texto no Modo Página: 0-Esquerda/Direta, 1-Topo/Baixo, 2-Direita/Esquerda, 3-Baixo/Topo.
	<mp_topo>0</mp_topo>                                     // Margem superior em pixels.
	<mp_esquerda>0</mp_esquerda>                             // Margem à esquerda em pixels.
	<mp_largura>300</mp_largura>                             // Largura da página.
	<mp_altura>500</mp_altura>                               // Altura da página.
	<mp_espaco>40</mp_espaco>                                // Altura das linhas.
	<mp_pos>0</mp_pos>                                       // Define Posição X,Y no Modo Página.
	</mp_configurar>                                         // Envia configuações anteriores para a impressora.

	<qrcode>                                                 // Imprime QRCode de acordo com "PosPrinter_QRCode" do SDT.
		<qrcode_tipo>2</qrcode_tipo>                         // Configura o Tipo de QRCode: 1,2.
		<qrcode_largura>7</qrcode_largura>                   // Configura a Largura do QRCode: 1 a 16. (7: 2,5cm)
		https://acbr.sourceforge.io/ACBrLib/BemVindo.html
	</qrcode>

	</lf>                                                    // Nova linha, pois apenas a primeira fica na tabulação correta.
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf> // Texto condensado, negrito e nova linha.
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
	<c><n>                         CONDENSADA NEGRITO CONDENSADA NEGRITO</n></c></lf>
</mp>
</lf>                                                        // Nova linha após o modo página. (Será removido)
<c>                                                          // Recoloca o modo condensado porque o modo página o remove.
<n>                                                          // Recoloca o modo negrito porque o modo página o remove.
---------------------------------------------------------------- // Pontilhado para referência.

A TAG mp_largura está em 300 mas na verdade estamos utilizando 600. Esta foi colocada assim para exemplificar nossa questão onde foram adicionados 25 casas vazias à esquerda do texto "CONDENSADA NEGRITO" para compensar a sobreposição do texto no Qr Code. O exemplo segue na imagem:

Img28-05-24.thumb.jpeg.24e38173df3380c291c5729f93ac7d41.jpeg

Para reforçar, apenas a primeira linha fica certa, o resto sobrepõe o Qr Code, ao inserir uma nova linha ela inicia sem tabulação, se retirarmos os espaços vazios à esquerda do texto todas as linhas começam em cima do Qr Code.

Este texto foi colocado com aberturas e fechamentos de negrito e condensado pois este bloco terá variações em cada linha, aqui ele foi escrito assim apenas pelo exemplo.

Lembrando que o pseudo-código com as TAGs e informações são todas concatenadas em uma linha, não há tabulação ou novas linhas como mostra no exemplo. A linearização não deixa comandos ocultos.

Portanto a minha pergunta, dado o pseudo-código fornecido, existe alguma coisa que pode ser feita para que uma nova linha ou quebra de linha não sobreponha o Qr Code? Estamos fazendo alguma coisa incorreta no bloco <mp>?

 

Obrigado desde já pela atenção.

  • Consultores
  • Solution
Postado
4 horas atrás, Compusis Informatica Ltda disse:

Até então a criação de cupons NFCe ou comandas tem sido tranqüila mas surgiram algumas dúvidas.

Porque está criando cupom NFCe?
A solução ACBrLibNFe já faz impressão tanto DANFe (A4) NFe Modelo 55, quanto NFCe Modelo 65 em fortes report quanto para acbrposprinter.
Os cupons já estão todos prontos e são configuráveis se vai imprimir logo lateral ou nao, assim como qrcode.

Você não precisa montar sua impressão.
Basta você definir na biblioteca o modelo da DANFCe e todas propriedades dela.
https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca16.html

image.png
 

Então você não se preocupara em criar isso, já tem tudo dentro do padrão SEfaz.

Mesma coisa com SAT, tem cupom SAT pronto.. so mandar imprimir.

Qual linguagem vc desenvolve??

Agora vc pode usar sim, PosPrinter, para criar comandas de cozinhas e outros relatórios q não estejam pronto na solução.







 

  • Curtir 1
Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...