Impressão com comandos direto para impressora!

8 respostas
I

Preciso imprimir um cupom não fiscal em uma elgin wind térmica paralela…
e preciso enviar um comando pra corta papel…

Alguém sabe como?

Obrigado,
Ivan Daniel Melchiors

8 Respostas

T

Leia o manual dessa impressora Elgin, para ver que bytes você tem de mandar para a impressora.
Uma coisinha - ela é uma impressora paralela ou serial? (Se for USB, provavelmente ela se comporta como se fosse uma impressora paralela para o programa).

I

A impressora é paralela.

A minha idéia é deixar driver genérico somente texto, e utilizar algum comando em java pra acionar o cuter da impressora.
Pois ai tanto faz se a impressora está em rede ou local.

Obrigado.

T

Hum… o driver “genérico somente texto” filtra os comandos que você manda para a impressora. Acho que o único comando que ele aceita é o de quebra de página, ou Ctrl+L, mas mesmo assim eu não tenho certeza.

Para mandar comandos especiais diretamente para a impressora é necessário usar uma conexão direta, como a JavaComm. Isso é meio chato, pelo que você viu, porque começa a excluir o fato de você poder usar a impressora em rede.

I

Pois é…

Ai complica.

Porque terei que fazer de todas as conexões.
E se for em rede não terá como.

Obrigado.

T

http://www.frogmorecs.com/arts/using-the-generic-driver.html me deu uma inspiração. Alguns dos comandos do “Generic/Text Only” podem ser redefinidos; veja qual é o comando de END PRINT JOB, e em vez de usar ESC E como está mostrado no exemplo, tente pôr o comando que corta o papel da impressora.

I

.

I

Blzz Fera!

Vou testar hoje a noite e te respondo se deu certo!
Não estou com a impressora aqui.

No Linux deve de ter a mesma opção!?

E para impressão, qual biblioteca você usa?

Estou fazendo de duas formas:

1)
String impressao = "TESTE DE IMPRESSAO";
        PrintService service = PrintServiceLookup.lookupDefaultPrintService();
        DocPrintJob job = service.createPrintJob();

        URL url = new URL(); OU SIMPLE DOC
        
        DocFlavor flavor = DocFlavor.URL.GIF;
        Doc doc = new SimpleDoc(url, flavor, null);
        PrintRequestAttributeSet attrs = new HashPrintRequestAttributeSet();
        attrs.add(new Copies(1));
        job.print(doc,attrs);
2)
fr = new Frame("Impressão");
        fr.pack();
        g = new Graphics[1];
        tk = fr.getToolkit();
        pj = tk.getPrintJob(fr, "Recibo", null);

Gostei da primeira pois tenho mais opções! e não preciso que seja selecionada a impressora como da segunda maneira...

Você já fez impressão fiscal?

Obrigado,
Ivan.

I

Aew thingol!

Colocando o comando no drive genérico somente texto não funciona!

coloquei tb em hexa, mas não deu certo.

Vou entrar em contato com a Elgin.

Valew.

Criado 16 de março de 2009
Ultima resposta 16 de mar. de 2009
Respostas 8
Participantes 2