Impressora Não Fiscal como imprimir em CSharp

10/03/2016

bom dia amigos, estou com dúvidas qual a melhor forma de programar para fazer a impressão de forma que atenda as várias marcas existentes no mercado, sem ficar dependente de uma dll específica para para cada marca.
nos meus testes começei utilizando a classe System.Drawing.Printing.PrintDocument() o que deu certo e a impressão saiu.

mas ainda sim e não sei se é a forma correta e não estou conseguindo enviar um comando necessário: Corte de Papel
já tentei enviar (char)27 + (char)109 no final do texto, mas não deu certo.

se os colegas puderem ajudar agradeço.

Respostas

10/03/2016

William (devwilliam)

Olá Rodrigo, qual a marca da sua impressora?

A maioria delas suporta comandos EscPos ou você pode fazer chamadas a DLL que geralmente os fabricantes disponibilizam.
Responder Citar

11/03/2016

Rodrigo Santos Currículo

[quote]Olá Rodrigo, qual a marca da sua impressora?

A maioria delas suporta comandos EscPos ou você pode fazer chamadas a DLL que geralmente os fabricantes disponibilizam.[/quote

olá William, não gostaria de usar a DLL, para não ficar preso ao fabricante.

quanto ao modelo da minha impressora EPSON TM-T20.

até consegui fazer impressão usando printDocument, mas não consigo acionar a guilhotina para cortar o papel.

se tiver uma sugestão agradeço.
Responder Citar

11/03/2016

William (devwilliam)

Por coincidência tenho esse mesmo modelo de impressora, mas minhas aplicações são desenvolvidas em Delphi utilizando a suíte de componentes ACBr e consigo trabalhar com outros modelos de impressora usando os comando EscPos.

Veja a documentação da Epson https://reference.epson-biz.com/modules/ref_escpos/index.php?content_id=2
Responder Citar

11/03/2016

Rodrigo Santos Currículo

mas já tentei utilizar no C# (char)27 + 'i' mas não tive sucesso, ou estou utilizando um componente errado para imprimir ou o comando não está de forma correta, vc sugere algo ?
Responder Citar

11/03/2016

Rodrigo Santos Currículo

problema resolvido passei a utilizar a classe RawPrinterHelper, obrigado a todos.
Responder Citar