| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/08/2006 15:31:28
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Algum aqui sabe a sintaxe do comando para posicionar o local de impressão de uma impressora Epson (ESC-P), horizontalmente.
tipo, quero que um determinado campo seja impresso na coluna 10 da linha corrente, outro na coluna 25 da mesma linha....
Estou montando um relatório para imprimir em um formulário continuo e preciso disso...
Se alguem souber eu agradeço!
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/08/2006 17:29:35
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Ninguém aqui nunca fez isso não??
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/08/2006 18:31:56
|
leonardom
Virtual Machine Man
![[Avatar]](/images/avatar/7f5d04d189dfb634e6a85bb9d9adf21e.jpg)
Membro desde: 23/02/2003 11:41:23
Mensagens: 654
Localização: Anywhere
Offline
|
Marcelo, se você está imprimindo direto para a porta da impressora (lpt1) acho que vai conseguir fazer isso somente usando espaços em branco. Tipo você tem que formatar a linha antes com os devidos espaços e valores e depois imprimi-la, isto é envia-la para porta da impressora.
|
"If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas."
George Bernard Shaw (1856 - 1950) - Irish dramatist - Nobel Prize of Literature, 1925
blog: http://leonardom.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/08/2006 18:42:12
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Encontrei este comando, mas não sei se estou utilizando incorretamente ou se não entendi exatamente o que ele faz.
Mas pelo que li na documentação ele imprime a string a partir de n1 até n2....
Porém não está funcionando....
ESC $ n1 n2
Estabelece a posição de impressão n1 pontos a partir do início da linha
0<=n2<=1
Encontrei aqui : http://sd.epson.pt/support/download/data/faq/escpos.pdf#search=%22ESC%20%24%20comando%20epson%20horizontal%22
Alguém têm alguma idéia??
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/08/2006 09:49:37
|
vitorpatriarcha
Debugger
Membro desde: 11/04/2006 09:22:31
Mensagens: 71
Offline
|
Ola, Bom dia.
Estou tendo problemas para imprimir diretamente para a impressora matricial.
Como voce faz essa impressao??
Valew!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/08/2006 22:58:56
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Amanhã posto aqui pra vc...
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/08/2006 23:12:13
|
vitorpatriarcha
Debugger
Membro desde: 11/04/2006 09:22:31
Mensagens: 71
Offline
|
Ok. Valew
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/09/2006 08:43:26
|
vitorpatriarcha
Debugger
Membro desde: 11/04/2006 09:22:31
Mensagens: 71
Offline
|
Ainda aguardo sua ajuda!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/09/2006 09:05:47
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Bom, está ai a classe, pra mim ta funcionando 100%.
Se tiver alguma dúvida com relação ao código pode postar que respondo...
Abraços...
/**
* Impressão de Documento em Matricial
* @version 1.0 - Date: 2006-08-24
*/
import java.io.*;
import java.lang.StringBuffer;
public class Capa {
public static void main( String[] args) throws IOException {
FileOutputStream outputFile = new FileOutputStream("LPT1:");
PrintWriter out = new PrintWriter(outputFile);
final String RESET = "\u001B" + "@";
final String TAMANHO_DA_PAGINA = "\u001B" + "C" + (char)33;
final String TABELA_CARACTERES = "\u001B" + "t" + (char)0;
final String TABELA_CARACTERES_2 = "\u001B" + "(t" + (char)3 + (char)0 + (char)0 + (char)25 + (char)0;
final String FORM_FEED = "\f";
final String NOVA_LINHA = "\n";
final String ALIMENTA_PAGINA = "\u000C";
final String TAMANHO_10 = "\u001B" + "!" + (char)0;
final String TAMANHO_12 = "\u001B" + "M";
final String TAMANHO_15 = "\u001B" + "g";
final String TAMANHO_56 = "\u001B" + "!" + (char)56;
final String ALINHA_DIREITA = "\u001B" + "a" + (char)0;
final String ALINHA_ESQUERDA = "\u001B" + "a" + (char)1;
final String ALINHA_CENTRO = "\u001B" + "a" + (char)2;
final String ALINHA_TOTAL = "\u001B" + "a" + (char)3;
final String COLUNA_A = "\u001B" + "$" + (char)1;
final String COLUNA_B = "\u001B" + "$" + (char)3;
final String COLUNA_C = "\u001B" + "$" + (char)5;
final String COLUNA_D = "\u001B" + "$" + (char)7;
final char vazio = ' ';
final String linhaHorizontal = "---------------------------------------------------------------------------------";
System.out.println("Tamanho : " + linhaHorizontal.length());
StringBuffer buffer = new StringBuffer();
buffer.setLength(2370);
int novaLinha = 0;
for (int i = 0; i < 2370; i++)
buffer.setCharAt(i, vazio);
//INICIO DA LINHA 1
buffer = replaceCaracteres(30, "CAPA DE RVA", buffer);
buffer = replaceCaracteres(60, "123456", buffer);
//FIM LINHA 1 INICIO LINHA 2
buffer = replaceCaracteres(67, linhaHorizontal, buffer);
//FIM LINHA 2 INICIO LINHA 3
buffer = replaceCaracteres(149, "NOME :", buffer);
buffer = replaceCaracteres(162, "FULANO DE TAL", buffer);
buffer = replaceCaracteres(205, "RECEBER DIA : ", buffer);
buffer = replaceCaracteres(219, "24/08/2006", buffer);
//FIM LINHA 3 INICIO LINHA 4
buffer = replaceCaracteres(229, "NUM. RVA :", buffer);
buffer = replaceCaracteres(242, "123456", buffer);
buffer = replaceCaracteres(285, "PERIODO : ", buffer);
buffer = replaceCaracteres(299, "TARDE", buffer);
//FIM LINHA 4 INICIO LINHA 5
buffer = replaceCaracteres(305, "ASSINAT. :", buffer);
buffer = replaceCaracteres(318, "RENOVACAO", buffer);
//FIM DA LINHA 5 INICIO DA LINHA 6
buffer = replaceCaracteres(376, buffer.substring(376, 446), buffer);
//FIM LINHA 6 INICIO LINHA 7
buffer = replaceCaracteres(447, "VEND.(A) :", buffer);
buffer = replaceCaracteres(460, "TMK16 JANETE", buffer);
//FIM LINHA 7 INICIO LINHA 8
buffer = replaceCaracteres(518, "----------------------------ENDEREÇO PARA RECEBIMENTO---------------------------", buffer);
//FIM LINHA 8 INICIO LINHA 9
buffer = replaceCaracteres(599, "LOGRAD. :", buffer);
buffer = replaceCaracteres(612, "AV. T-13 APTO. 404", buffer);
buffer = replaceCaracteres(655, "NUMERO : ", buffer);
buffer = replaceCaracteres(669, "136", buffer);
//FIM LINHA 9 INICIO LINHA 10
buffer = replaceCaracteres(676, "COMPLEM. :", buffer);
buffer = replaceCaracteres(689, "EDIFICIO IPANEMA", buffer);
//FIM LINHA 10 INICIO LINHA 11
buffer = replaceCaracteres(747, "BAIRRO :", buffer);
buffer = replaceCaracteres(760, "SETOR BELA VISTA", buffer);
buffer = replaceCaracteres(803, "CEP : ", buffer);
buffer = replaceCaracteres(817, "74.000-000", buffer);
//FIM LINHA 11 INICIO LINHA 12
buffer = replaceCaracteres(828, "REFEREN. :", buffer);
buffer = replaceCaracteres(841, "CALDO & CIA", buffer);
//FIM LINHA 12 INICIO LINHA 13
buffer = replaceCaracteres(909, "TELEFONE : ", buffer);
buffer = replaceCaracteres(922, "62-3255-7663", buffer);
//FIM LINHA 12 INICIO LINHA 13
buffer = replaceCaracteres(990, buffer.substring(990, 1070), buffer);
//FIM LINHA 13 INICIO LINHA 14
buffer = replaceCaracteres(1071, "-----------------------------------OBSERVAÇOES----------------------------------", buffer);
//FIM LINHA 14 INICIO LINHA 15
buffer = replaceCaracteres(1152, "-----------------------------------OBSERVAÇOES----------------------------------", buffer);
//FIM LINHA 15 INICIO LINHA 16
buffer = replaceCaracteres(1232, "-----------------------------------OBSERVAÇOES----------------------------------", buffer);
//FIM LINHA 16 INICIO LINHA 17
buffer = replaceCaracteres(1312, "-----------------------------------OBSERVAÇOES----------------------------------", buffer);
//FIM LINHA 17 INICIO LINHA 18
buffer = replaceCaracteres(1392, "-----------------------------------OBSERVAÇOES----------------------------------", buffer);
//FIM LINHA 18 INICIO LINHA 19
buffer = replaceCaracteres(1473, "--------------------------------------------------------------------------------", buffer);
//FIM LINHA 19 INICIO LINHA 20
buffer = replaceCaracteres(1554, " * * * PARA USO DO RECEBEDOR * * * ", buffer);
//FIM LINHA 20 INICIO LINHA 21
buffer = replaceCaracteres(1635, "--------------------------------------------------------------------------------", buffer);
//FIM LINHA 21 INICIO LINHA 22
buffer = replaceCaracteres(1716, " | MOTIVO DO CANCELAMENTO ", buffer);
//FIM LINHA 22 INICIO LINHA 23
buffer = replaceCaracteres(1797, " | ", buffer);
//FIM LINHA 23 INICIO LINHA 24
buffer = replaceCaracteres(1878, " | ( ) PAGOU NO BANCO ", buffer);
//FIM LINHA 24 INICIO LINHA 25
buffer = replaceCaracteres(1959, " | ( ) PROBLEMA FINANCEIRO", buffer);
//FIM LINHA 25 INICIO LINHA 26
buffer = replaceCaracteres(2040, " | ( ) COMPROU DO CORRETOR", buffer);
//FIM LINHA 26 INICIO LINHA 27
buffer = replaceCaracteres(2121, " | RVA N. ______________ ", buffer);
//FIM LINHA 27 INICIO LINHA 28
buffer = replaceCaracteres(2202, "--------------------------------------------------------------------------------", buffer);
out.print(RESET);
out.print(TAMANHO_DA_PAGINA);
out.print(TABELA_CARACTERES);
out.print(TABELA_CARACTERES_2);
//LINHA 1
out.print(TAMANHO_10);
out.print(buffer.substring(0, 29));
out.print(TAMANHO_56);
out.print(buffer.substring(30, 41));
out.print(TAMANHO_10);
out.print(buffer.substring(42, 59));
out.print(TAMANHO_56);
out.print(buffer.substring(60, 66));
out.println(TAMANHO_10);
out.print(buffer.substring(67, 7 );
//FIM LINHA 1 INICIO LINHA 2
out.print(TAMANHO_10);
out.print(buffer.substring(79, 14 );
//FIM LINHA 2 INICIO LINHA 3
out.println(buffer.substring(149, 229));
//FIM DA LINHA 3 INICIO DA LINHA 4
out.println(buffer.substring(229, 304));
//FIM DA LINHA 4 INICIO DA LINHA 5
out.println(buffer.substring(305, 375));
//FIM DA LINHA 5 INICIO DA LINHA 6
out.println(buffer.substring(376, 446));
//FIM DA LINHA 6 INICIO DA LINHA 7
out.println(buffer.substring(447, 517));
//FIM DA LINHA 7 INICIO DA LINHA 8
out.println(buffer.substring(518, 59 );
//FIM DA LINHA 8 INICIO DA LINHA 9
out.println(buffer.substring(599, 675));
//FIM DA LINHA 9 INICIO DA LINHA 10
out.println(buffer.substring(676, 746));
//FIM DA LINHA 10 INICIO DA LINHA 11
out.println(buffer.substring(747, 827));
//FIM DA LINHA 11 INICIO DA LINHA 12
out.println(buffer.substring(828, 90 );
//FIM DA LINHA 12 INICIO DA LINHA 13
out.println(buffer.substring(909, 989));
//FIM DA LINHA 12 INICIO DA LINHA 13
out.println(buffer.substring(990, 1070));
//FIM DA LINHA 13 INICIO DA LINHA 14
out.println(buffer.substring(1071, 1151));
//FIM DA LINHA 14 INICIO DA LINHA 15
out.println(buffer.substring(1152, 1232));
//FIM DA LINHA 15 INICIO DA LINHA 16
out.println(buffer.substring(1232, 1312));
//FIM DA LINHA 16 INICIO DA LINHA 17
out.println(buffer.substring(1312, 1392));
//FIM DA LINHA 17 INICIO DA LINHA 18
out.println(buffer.substring(1392, 1472));
//FIM DA LINHA 18 INICIO DA LINHA 19
out.println(buffer.substring(1473, 1553));
//FIM DA LINHA 19 INICIO DA LINHA 20
out.println(buffer.substring(1554, 1634));
//FIM DA LINHA 20 INICIO DA LINHA 21
out.println(buffer.substring(1635, 1715));
//FIM DA LINHA 21 INICIO DA LINHA 22
out.println(buffer.substring(1716, 1796));
//FIM DA LINHA 22 INICIO DA LINHA 23
out.println(buffer.substring(1797, 1877));
//FIM DA LINHA 23 INICIO DA LINHA 24
out.println(buffer.substring(1878, 195 );
//FIM DA LINHA 24 INICIO DA LINHA 25
out.println(buffer.substring(1959, 2039));
//FIM DA LINHA 25 INICIO DA LINHA 26
out.println(buffer.substring(2040, 2120));
//FIM DA LINHA 26 INICIO DA LINHA 27
out.println(buffer.substring(2121, 2201));
//FIM DA LINHA 27 INICIO DA LINHA 28
out.println(buffer.substring(2202, 2282));
out.print(ALIMENTA_PAGINA);
out.close();
outputFile.close();
}
public static StringBuffer replaceCaracteres(int inicio, String str, StringBuffer buffer)
{
int indexChar = 0;
int tamanho = str.length();
char vetorChar[] = str.toCharArray();
for (int i = inicio; i < (inicio + tamanho); i++)
{
buffer.setCharAt(i, vetorChar[indexChar]);
indexChar++;
}
return buffer;
}
}
This message was edited 1 time. Last update was at 09/01/2009 22:14:41
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/09/2006 13:47:01
|
vitorpatriarcha
Debugger
Membro desde: 11/04/2006 09:22:31
Mensagens: 71
Offline
|
Certo, Mas nesse exemplo vc gera um arquivo LPT1: nao é??
Dai entao voce manda Imprimir esse arquivo.
Ok. E como vc imprime esse arquivo?
Desde ja agradeco ai pela tua ajuda!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/09/2006 13:53:01
|
marcelohonsa
Debugger
![[Avatar]](/images/avatar/d9b993256f4573d37b1cdc50ea3528d8.jpg)
Membro desde: 13/08/2006 21:19:15
Mensagens: 72
Offline
|
Veja bem :
//Aqui eu gero um Fluxo de Arquivo na porta LPT1, que é a default para impressoras em SO Windows
FileOutputStream output = new FileOutputStream("LPT1");
//Aqui é onde eu gero um objeto da classe PrinterWrite passando como parâmetro o FileOutputStream gerado anteriormente. É esse objeto PrinterWrite que escreve na porta na impressora.
PrinterWrite out = new PrinterWrite(output);
|
Calango
Bacharel em Ciência da Computação - IUESO
Sun Certified Java Programmer - SCJP
Sun Certified Web Component Developer - SCWCD
Sun Certified Business Component Developer - SCBCD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/09/2006 15:09:07
|
vitorpatriarcha
Debugger
Membro desde: 11/04/2006 09:22:31
Mensagens: 71
Offline
|
Tá, me desculpe.
Hé que estou fazendo isso no linux e nao tenho a porta LPT1.
Entao como ele nao encontra essa porta ele cria um arquivo chamado LPT1.
Vou ter que verificar agora quais as portas que eu devo enviar.
Por padrao é /dev/lp0.
Porem as impressoras instaladas nesta maquina sao todas instaladas por uma VPN.
Mesmo Assim. Obrigado!
|
|
|
 |
|
|
|
|
|