| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 10:09:44
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Galera, estou tendo o seguinte problema:
Estou tentando usar o Acrobat Viewer JavaBean para visualizar meus arquivos PDF a partir de uma aplicação SWING.
Fazendo um teste inicial, para carregar um arquivo que se encontra no sistema de arquivos, tudo vai bem; eu consigo visualizar tudo numa boa, consigo fazer a seleção de determinados trechos do texto.
O código desse teste inicial é o seguinte:
Porém, na aplicação onde devo utilizar o Viewer, eu guardo os arquivos PDF no banco de dados, e ao tentar visualizar o arquivo (criando um ByteArrayInputStream com base nos bytes (byte[]) vindos do banco) o mesmo não é apresentado adequadamente.
Esse "não visualizar adequadamente" é: o texto não aparece, somente as imagens que fazem parte do documento, assim como formatações (realce de texto, por exemplo).
Ao tentar selecionar um trecho, só de clicar no documento, já recebo uma exceção, coisa que não acontece quando abro um arquivo direto do sistema de arquivos.
Alguém tem alguma idéia do porquê disso?
Sei que posso criar um arquivo temporário no sistema de arquivos, e visualizá-lo, mas gostaria de usar diretamente os bytes obtidos no banco.
Alguém sugere outro visualizador (que seja gratuito)?
[]'s
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 10:35:28
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Galera... fiz um teste aqui, gerando um arquivo temporário, e mesmo assim o Viewer não apresenta o texto corretamente, mas se eu abro o arquivo temporário, o mesmo está legível. :p
alguma sugstão?
[editado] imagino que talvez seja algum problema de tipo de fonte [/editado]
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 10:57:53
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Outra informação que possa ser relevante:
eu estou gerando esses pdf's a partir do open-office.... minha aplicação, a partir de um modelo de documento guardado no banco de dados, gera um arquivo temporário do tipo .sxw, abre este modelo no open-office, faz alguns search-replace no documento (tipo mala-direta), e gera o pdf, usando a api do próprio open-office.
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:13:23
|
felipecruz
JavaTeenager
Membro desde: 18/07/2006 10:25:29
Mensagens: 150
Offline
|
voce ja tentou
|
loogica - http://blog.loogica.net |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:23:58
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
felipecruz wrote:voce ja tentou
Sim Felipe, o método que chama o viewer está assim:
e o método que chama esse aí de cima, responsável por criar o arquivo temporário, é este:
ele até apresenta o documento, mas como falei, sem mostrar o texto... e o texto está lá, porque os realces de texto aparecem, só a fonte que não
e se eu abro o temporário no Adobe reader mesmo (sem ser o bean), eu o visualizo numa boa.
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:35:18
|
felipecruz
JavaTeenager
Membro desde: 18/07/2006 10:25:29
Mensagens: 150
Offline
|
é... realmente tem algo estranho ai..
vc ja tentou usar seu codigo pra abrir um pdf q vc sabe q é valido?
talvez o problema seja na geração do pdf
vc ja tentou abrir o pdf q vc gerou pelo acrobat?
eu ja usei esse componente.. com pdf gerado pelo itext e nao tive nenhum problema..
eu so ainda nao entendi pq vc usa o bytearray ao inves de usar direto assim
|
loogica - http://blog.loogica.net |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:48:33
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
felipecruz wrote:
eu so ainda nao entendi pq vc usa o bytearray ao inves de usar direto assim
pois é... marcação mesmo... sugestão acatada
felipecruz wrote:
vc ja tentou abrir o pdf q vc gerou pelo acrobat?
sim... abre numa boa... só no bean que não aparece direito...
e se eu tento abrir um outro arquivo qualquer com o bean, ele abre numa boa tb... a questão é que eu acho que ao ir ao banco e voltar, o arquivo sofre alguma modificação que impede que o bean o abra...
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:55:20
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Aliás... fazendo um teste percebi que mesmo antes de ir para o banco o bean não consegue apresentar o pdf corretamente... deve-se ao fato de estar sendo gerado pelo open-office
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:55:22
|
felipecruz
JavaTeenager
Membro desde: 18/07/2006 10:25:29
Mensagens: 150
Offline
|
Luiz_Gustavo wrote:
sim... abre numa boa... só no bean que não aparece direito...
e se eu tento abrir um outro arquivo qualquer com o bean, ele abre numa boa tb... a questão é que eu acho que ao ir ao banco e voltar, o arquivo sofre alguma modificação que impede que o bean o abra...
estranhoooo.. pq se abre por fora o visualizador deveria abrir tb..
como vc obtem o pdf do banco?
|
loogica - http://blog.loogica.net |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 11:58:45
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
felipecruz wrote:
como vc obtem o pdf do banco?
Então... percebi que o problema não é o banco... quando obtenho o pdf do banco, e gero um temporário para a apresentação, consigo visualizar numa boa pelo adobe reader, só o viewer que não dá conta.
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 12:09:42
|
felipecruz
JavaTeenager
Membro desde: 18/07/2006 10:25:29
Mensagens: 150
Offline
|
Luiz_Gustavo wrote:
felipecruz wrote:
como vc obtem o pdf do banco?
Então... percebi que o problema não é o banco... quando obtenho o pdf do banco, e gero um temporário para a apresentação, consigo visualizar numa boa pelo adobe reader, só o viewer que não dá conta.
como sempre.. só pode estar faltando algum detalhe muito bobo entao hehehe
no pior dos casos voce manda roda o acrobat ao inves de chamar o visualizador! hehehe
boa sorte!!
|
loogica - http://blog.loogica.net |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 13:28:17
|
dudaskank
GUJ Ranger
Membro desde: 12/09/2003 14:59:26
Mensagens: 850
Localização: Suzano, SP, Brasil
Offline
|
não acho que tenha algo relacionado mas... segundo os comentários do artigo esta api é meio velha e não funciona muito bem com swing... tenta trocar pra awt e ver se fica igual... apesar que não acho que seja isso, não custa tentar hehehe
|
Eduardo Oliveira
Toque a balada do amor inabalável, eterna love song de nós dois...
Página |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 14:16:08
|
hashcode
JavaChild
Membro desde: 11/07/2006 15:58:19
Mensagens: 115
Offline
|
"Caro cara do pdf"!
Não conheço essa aplicação mas de postscript sei um pouco.
Em um arquivo postscript podemos ter fontes, imagens(dentro), referencia de imagens(de fora), objetos encapsulados e bitmaps.
Acho que seu problema é com o path onde se encontra as fontes. Então ele não consegue renderizar utilizando uma fonte que o documento está pedindo.
Primeiramente verifique se essa API que vc tá sofrendo com ele se ela já vem com as fontes, se não viar vc tera que setar o path, como se fosse o classpath mas um fontpath.
Exemplo no linux, temos o clássico ghostscript(interpretados de postscript)
no arquivo
é um mapeamento das fontes.
Neste caso uma fonte TrueType que pode ser convertida para um padrão .pfb .pfa ou .pfm em tempo de execução pelo aplicativo reenderizador ghostscript.
Sugio a vc que abrir o seu pdf utilizando o gs (ghostview) e verificar quais fontes são necessárias e depois defina o path.
PDF é um PS "compilado"
Salve o arquivo como .ps e converta para pdf
Se a sua API estiver pelo menos com a fonte padrão(Helvetica) isso funcionará.
|
Shairon Toledo |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/07/2006 15:17:11
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Obrigado pelas dicas galera!!!
[]'s
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/08/2010 12:11:52
|
Alisson580
Smalltalk
Membro desde: 26/08/2010 11:54:57
Mensagens: 2
Offline
|
Eu sou iniciante no Java, estou estudando a uns 2 meses e fiquei interessado em fazer uma aplicação java utilizando um vizualizador PDF. Vocês tem uma apostila passo-a-passo, como implementar na aplicação? ou será que vc's poderiam me ensinar por aqui?
Agradeço muito.
|
|
|
 |
|
|