Código de barra  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Pessoal, alguém ai conhece algum pacote free para geração de código de barra??! Preciso gerar os códigos como imagens e salvá-las... Para posteriormente inseri-las em JPanels, etc, para impressão em conjunto com outros dados

Obrigado!

Cássio Marques

Blog
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Você vai imprimir um JPanel? Em vez disso use o tal do JasperReports/iReport para imprimir tudo que você quer (incluindo códigos de barras).
[WWW]
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Na verdade eu não vou imprimir o JPanel, vou apenas representar um cartão tamanho padrão (igual cartão de crédito) com foto, nome e um código de barras... O Editor gráfico é para possibilitar a criação de layouts para os cartões, gerando assim um arquivo com o tipo e as coordenadas de cada entidade...

Alguma dica??!

Obrigado!

Cássio Marques

Blog
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Hum, na verdade desenhar códigos de barras é relativamente simples, se você for usar o código 3 de 9 (letras e dígitos) ou 2 de 5 (apenas dígitos), já que você só precisa desenhar barras de duas larguras - "larga" e "estreita" e de duas cores - "preta" e "branca", e combinar essas barras segundo a definição.

http://www.spatula.net/proc/barcode/code25.src
http://www.spatula.net/proc/barcode/i25.src
http://www.spatula.net/proc/barcode/code39.src

Eu sei que existem fontes TrueType com códigos de barras, mas não recomendaria seu uso porque é necessário instalá-las na máquina do cliente (por exemplo, no caso do Windows em c:\windows\fonts), ou usar um método complicado de carregá-las a partir de arquivos.
[WWW]
cassio
GUJ Master
[Avatar]

Membro desde: 19/06/2006 08:25:28
Mensagens: 1336
Localização: Caieiras-SP
Offline

Muito obrigado! Agora preciso só avaliar qual sistema de código de barras devo utilizar aqui... ehehe

Estrelas para vc!

Cássio Marques

Blog
Babol
Thread.start()

Membro desde: 29/10/2003 19:49:30
Mensagens: 36
Offline

Ola a todos!

Vou aproveitar este tópico !


Preciso imprimir na tela um código de barras, mas é o padrão PDF417 (bidimensional). A imagem dele é esta:
http://www.swinglabels.com/images/barcodes/PDF417.gif


Tudo que eu achei até agora, inclusive aqui no GUJ faz referência aos padrões "comuns" (code 128, codabar, etc.)

Alguem tem alguma dica, ou um caminho das pedras?

Valeu
Babol
[Email]
hashcode
JavaChild
[Avatar]
Membro desde: 11/07/2006 15:58:19
Mensagens: 115
Offline

Tem um projeto de um camarada chamado pdf417lib no sourceforge já usei para codificação de barras em postscript. Dê uma olhada porque tá muito fácil a big class do cara.
Faça um algoritmo para renderizar (java 2D) através do código gerado por ela.







Shairon Toledo
[WWW]
Babol
Thread.start()

Membro desde: 29/10/2003 19:49:30
Mensagens: 36
Offline

hashcode wrote:Tem um projeto de um camarada chamado pdf417lib no sourceforge já usei para codificação de barras em postscript. Dê uma olhada porque tá muito fácil a big class do cara.
Faça um algoritmo para renderizar (java 2D) através do código gerado por ela.


Caro hashcode,

Durante minha busca eu até vi este projeto, mas aqui no trabalho eu não consigo baixar .zip (parece brincadeira...), então não pesquisei a fundo. Somente hoje eu consegui este zip, mas independente disso, obrigado pela dica, esta sendo super útil

Como vc falou, a classe é "big", mas nao to entendendo a saída do programa. Se faço assim: java Pdf417lib teste.txt teste ele cria um arquivo teste.txt desta forma:
/Times findfont
12 scalefont setfont
100 80 moveto
(A PDF417 example.)show
stroke
100 100 translate
43.0 18.0 scale
86 12 1 [86 0 0 -12 0 12]{<
00AB8AC7C2B0E2A3F0175B
00AB857BC3C960ACF0175B
00AB9507C540EAF0F0175B
00ABA820C9EFA50830175B
00AB947DC08D651DF0175B
00AB828F5F94614130175B
00ABAC63DD93EB11F0175B
00AB8168D983650210175B
00ABAC83D8CC60B170175B
00ABAE7CC613AB9CF0175B
00AB963DD7C2E58DF0175B
00AB9760D770E05CD0175B>}image
showpage

Quando vc diz que eu preciso renderizar, seria esta informação impressa?

Obrigado pela ajuda
Babol
[Email]
Babol
Thread.start()

Membro desde: 29/10/2003 19:49:30
Mensagens: 36
Offline

Babol wrote:
hashcode wrote:Tem um projeto de um camarada chamado pdf417lib no sourceforge já usei para codificação de barras em postscript. Dê uma olhada porque tá muito fácil a big class do cara.
Faça um algoritmo para renderizar (java 2D) através do código gerado por ela.


Caro hashcode,

Durante minha busca eu até vi este projeto, mas aqui no trabalho eu não consigo baixar .zip (parece brincadeira...), então não pesquisei a fundo. Somente hoje eu consegui este zip, mas independente disso, obrigado pela dica, esta sendo super útil

Como vc falou, a classe é "big", mas nao to entendendo a saída do programa. Se faço assim: java Pdf417lib teste.txt teste ele cria um arquivo teste.txt desta forma:
/Times findfont
12 scalefont setfont
100 80 moveto
(A PDF417 example.)show
stroke
100 100 translate
43.0 18.0 scale
86 12 1 [86 0 0 -12 0 12]{<
00AB8AC7C2B0E2A3F0175B
00AB857BC3C960ACF0175B
00AB9507C540EAF0F0175B
00ABA820C9EFA50830175B
00AB947DC08D651DF0175B
00AB828F5F94614130175B
00ABAC63DD93EB11F0175B
00AB8168D983650210175B
00ABAC83D8CC60B170175B
00ABAE7CC613AB9CF0175B
00AB963DD7C2E58DF0175B
00AB9760D770E05CD0175B>}image
showpage

Quando vc diz que eu preciso renderizar, seria esta informação impressa?

Obrigado pela ajuda
Babol


Cara, desconsidere esta mensagem, descobri como faz. Tem que mandar no formato postscript....

Agora vou partir para a segunda fase da sua sugestão (e a mais dificil). Renderizar a imagem usando 2D (Não faço nem ideia de como fazer isso, mas vamos la!).

Valeu pela força!
Babol
[Email]
hashcode
JavaChild
[Avatar]
Membro desde: 11/07/2006 15:58:19
Mensagens: 115
Offline

Divirta-se com
e668. Creating a Buffered Image from an Array of Color-Indexed Pixel Values
http://javaalmanac.com/egs/java.awt.image/Mandelbrot2.html
Pode-se fazer também um JPG ou TIFF com esse tipo de dados bitmap sem precisar codificar em demasia http://schmidt.devlib.org/java/image-io-libraries.html

Obs.: Quando vc conseguir fazer esse mangue aí manda pro cara do pdf417lib, se for open source né!!





Shairon Toledo
[WWW]
hashcode
JavaChild
[Avatar]
Membro desde: 11/07/2006 15:58:19
Mensagens: 115
Offline

thingol wrote:Hum, na verdade desenhar códigos de barras é relativamente simples, se você for usar o código 3 de 9 (letras e dígitos) ou 2 de 5 (apenas dígitos), já que você só precisa desenhar barras de duas larguras - "larga" e "estreita" e de duas cores - "preta" e "branca", e combinar essas barras segundo a definição.

http://www.spatula.net/proc/barcode/code25.src
http://www.spatula.net/proc/barcode/i25.src
http://www.spatula.net/proc/barcode/code39.src

Eu sei que existem fontes TrueType com códigos de barras, mas não recomendaria seu uso porque é necessário instalá-las na máquina do cliente (por exemplo, no caso do Windows em c:\windows\fonts), ou usar um método complicado de carregá-las a partir de arquivos.


Xi cara não é o caso de pdf417 ela é de leitura bi (2D) e não linar como as outras.
[WWW]
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline


00AB8AC7C2B0E2A3F0175B
00AB857BC3C960ACF0175B
00AB9507C540EAF0F0175B
00ABA820C9EFA50830175B
00AB947DC08D651DF0175B
00AB828F5F94614130175B
00ABAC63DD93EB11F0175B
00AB8168D983650210175B
00ABAC83D8CC60B170175B
00ABAE7CC613AB9CF0175B
00AB963DD7C2E58DF0175B
00AB9760D770E05CD0175B


PostScript é uma linguagem de programação que normalmente é usada para enviar comandos para impressoras. Embora não esteja com o guia de referência do PostScript aqui, dá a impressão que esses códigos hexadecimais representam um bitmap, que pode ser plotado com Java2D ou a API de sua preferência. Por exemplo, cada linha está começando com 00AB, ou seja, em binário daria 0000.0000.0000.0000.1010.1011 - se os bits 0 forem branco e 1 forem preto, então dá para você começar a plotar os pixels.
[WWW]
Babol
Thread.start()

Membro desde: 29/10/2003 19:49:30
Mensagens: 36
Offline

Caros hashcode e thingol
Encontrei um exemplo no site da sun onde o ele exibe, via applet, um programa que exibe somente imagens no formato .ps. (seguindo sugestão do hashcode)

É claro que todos os exemplos citados imprimem exceto o que é criado pelo fonte do pdf417lib.
O exemplo eu obtive neste site:
http://java.sun.com/products/java-media/2D/samples/index.html
Baixei o zip do "PostscriptViewer Demo" mas na hora de executar aparece o erro:

Lexical error at line 8, column 27. Encountered: "<" (60), after : ""

Alguem tem alguma dica ou saida para isso?

Valeu!
[Email]
hashcode
JavaChild
[Avatar]
Membro desde: 11/07/2006 15:58:19
Mensagens: 115
Offline

Taca o ps aqui para darmos uma olhada.





Shairon Toledo
[WWW]
Babol
Thread.start()

Membro desde: 29/10/2003 19:49:30
Mensagens: 36
Offline

Aqui esta o arquivo
 Nome do arquivo arquivo.ps [Disk] Download
 Descrição
 Tamanho 375 bytes
 Baixado:  328 vez(es)

[Email]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team