Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado (editado)

Olá pessoal, eu estava precisando fazer a comunicação com a impressora TSP 700, da marca Star.
Até então eu estava usando os comandos do arquivo da Epson, ou seja o modelo "ACBrEscPosEpson", a maioria dos comandos de impressão funciona corretamente
porém o comando para cortar o papel, por exemplo, é diferente entre a Epson e a Star e os demais modelos.
Para a epson o comando é GS  + 'V' e para o modelo star o comando é ESC + 'd'. Pensei na possibilidade de realizar alterações no arquivo "ACBrEscPosEpson" mais achei mais simples e organizado criar um arquivo especifico para os modelos de impressora Star.

As alterações ocorreram da seguinte forma, criei um novo arquivo chamado "ACBrEscPosStar" com os métodos e comandos específicos para esse modelo.
Na unit: "ACBrPosPrinter", adicionei no enumerador "TACBrPosPrinterModelo" o modelo novo, chamado "ppEscPosStar". Para o método "TACBrPosPrinter.SetModelo" dessa mesma unit adicionei no case a referencia para a nova classe: ppEscPosStar: FPosPrinterClass := TACBrEscPosStar.Create(Self);
Modifiquei o arquivo, ACBr_Serial.dpk adicionando essa nova unit: ACBrEscPosStar in '..\..\..\Fontes\ACBrSerial\ACBrEscPosStar.pas' ;

Após realizar as alterações compilei novamente o projeto ACBr e configurei meu sistema para esse novo modelo adicionado, após isso a impressão e o corte funcionou normalmente.

Eu verifiquei que existe um post bem antigo que fala sobre o corte de papel na impressora Star TSP 100 e TSP 143. Achei mais interessante abrir um post novo.

Não sei se o procedimento realizado foi feito da melhor forma, pode ser que exista uma forma melhor de tratar essa comunicação.
Para me informar dos comandos que devem ser utilizados na impressora Star , consultei o manual que serve para os modelo Star TSP 700 e Star TSP 800.

Segue em anexo os aquivos.

ImpressoraStarTSP700.rar

Editado por jeaanca
  • Curtir 1
  • Fundadores
Postado

Obrigado pela contribuição...

Porém creio que essa nova classe, poderia descender de TACBrEscPosEpson, e com isso você faria a sobreescrita apenas dos métodos que são diferentes, economizando Centenas de linhas de código repetido...

Veja um exemplo, na Unit ACBrEscCustomPos.pas

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Postado

Ok, vou fazer essa alteração e testar aqui em minha maquina.
Assim que terminar, se necessário eu envio o arquivo com minhas modificações.

Postado

Fiz as alterações nessa nova classe, descendendo de TACBrEscPosEpson como você explicou.
No create dessa classe mantive apenas o código referente ao corte na impressão que é o que realmente possui diferenças.

Segue em anexo o arquivo modificado: 

ACBrEscPosStar.pas

  • Curtir 1
  • Este tópico foi criado há 2051 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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...
The popup will be closed in 10 segundos...