Jasper & IReport cortando texto

Olá gente,

Bom, estou com um problema que ja muito quebrei a cabeça para resolver e não consigo. Tenho um relatório (pdf) que todo seu detail é um campo de texto que as vezes pode receber um texto de várias páginas. Acontece que no final das páginas ele está cortando texto, ora uma palavra ora uma linha inteira. Alguem tem alguma idéia de como resolver esse problema?

Você recebe este texto em uma text field né?

A opção Stretch when overflow, desta txt, tá true ou false?

Está marcada como true, senão nao consigo expandir de acordo com o texto que pode variar. As vezes é o seguinte. Tenho um relatório com 3 páginas de texto. Entre a 1a e 2a página, bem na troca de página o jasper está cortando o texto e continuando na próxima página faltando palavras. Pelo que vi pela net existem várias pessoas com este problema porém ninguém conseguiu a solução.

Justamente, por isso achei que tava marcada como false… pois o texto está sendo cortado.

Outro teste interessante: Aumente bem o tamanho do texfield e teste.

Também foi feito. O jasper tem uma altura de 802pixels para uma folha padrão A4 então eu peguei o header e o footer somei e subratai de 802. O resto que sobrou botei no detail e expandi meu campo de texto até o limete para ficar bem justo em uma A4. Fiz testes de impressão ficou certo. Porém continua cortando.

Oxi, que trem estranho!!!

Já testou para ver se o valor passado pro relatório tá completo?

Sim … Eu uso uma JRBeanCollectionDataSource então antes de passar minha colection para está classe eu faço um forEach para verificar. E está certo.

Muito estranho, pelo que andei lendo pelo forum deles isso pode ser possível por umas regras de measure que tem na fonte. Várias pessoas reclamando.

Andei observando que existem umas propriedades custom que pode ser aplicada aos campos texto, são estas:

Consigo fazer a tradução destas propriedades claramente porém não entendo como aplica-las. Alguem tem alguma experiencia com estas propriedades?

Dê uma olhada aqui e vê se ajuda:

http://jasperforge.org/plugins/espforum/view.php?group_id=102&forumid=103&topicid=35245

[quote=AdrianoPalm]Dê uma olhada aqui e vê se ajuda:

http://jasperforge.org/plugins/espforum/view.php?group_id=102&forumid=103&topicid=35245[/quote]

Muito bom, vou testar. Acabei de achar essa maravilhosa dica, Veja:

Uma das questões é justamente o que você colocou naquele link (o LineBreak_Policy) é a outra pode ser incompatibilidade de fonte. Então deixa eu entender. No meu relatório tem fonteName = SanSerif (default) e o pdfFontName = Helvetica (também Default) isso quer dizer que essas duas fontes podem não combinar? As duas não são reconhecidas pelo java.awt.font (que por sinal eu odeio)? Como determinar que fonte equivale a qual fonte?

Você saberia me dar alguns detalhes sobre como o ireport trabalha com essas fontes?

Coincidência… tava lendo exatamente esse post sobre fontes…

Vai ver é uma luz no fim do tunel…

Se funcionar, posta aê pois vai ajudar qualquer um que passar por isso, eventualmente.

Vou dar uma olhada nisso também e tentar entender esse comportamento das fontes. Por enquanto, eu iria na tentativa e erro pois não implementei nada assim, ainda.

EDIT: If the report displays properly in JasperViewer, then it is very likely that the PDF fonts do not match the Java fonts. Você testou isso???

[quote=AdrianoPalm]Coincidência… tava lendo exatamente esse post sobre fontes…

Vai ver é uma luz no fim do tunel…

Se funcionar, posta aê pois vai ajudar qualquer um que passar por isso, eventualmente.

Vou dar uma olhada nisso também e tentar entender esse comportamento das fontes. Por enquanto, eu iria na tentativa e erro pois não implementei nada assim, ainda.

EDIT: If the report displays properly in JasperViewer, then it is very likely that the PDF fonts do not match the Java fonts. Você testou isso???

[/quote]

Sim, problema é que é muito difícil fazer um caso de testes para esse problema. É uma coisa muito invariável, as vezes eu faço uma modificação pequena e o texto se ajusta mais dai quando uso outro texto não funciona.
Então tenho que entender bem a lógica para fugir o máximo possível dessas pegadinhas. Os pdfs aceitam poucas fontes e a unica equivalente em ambos é a Time New Roma. Vou adicionar também a LineBreak_policy e fazer vários testes para ver no que vai dar.

Estava passando pelo mesmo problema,

No ireport a fonte estava Times New Roman - Italica, e no pdf Times-Italic,

a quebra de linha estava cortando a frase.

Botei a fonte do iReport - JVM Arial e a PDF continuou Times-Italic

Funcionou perfeitamente :smiley:

Colegas, como chegaram a resolução do problema? Estive pesquisando bastante e nada de achar uma solução.