texto setwraptext setcolumnwidth poi formato example desde dar columna celdas celda ancho ajustar java html jasper-reports

java - setwraptext - Ancho de celda de columna dinámica



setcolumnwidth poi example (3)

Tengo algunos informes de Jasper que se muestran en formato HTML. Me gustaría que el ancho de las columnas en las tablas HTML se redimensione automáticamente para ajustarse al contenido de la celda más ancha (en esa columna), de modo que se muestren todos los datos.

Actualmente esto no ocurre porque el HTML generado por Jasper especifica anchos fijos para los elementos <table> y algunos <td>, por ej.

<td style="width: 20px; height: 17px;"> <span style="font-family: Arial; font-size: 11px;">foo-bar-baz@examp</span> </td>

No puedo simplemente eliminar todas estas propiedades de ancho (usando JavaScript), porque (como se muestra en el HTML anterior) los datos que se ocultarían al usar estos anchos ni siquiera se devuelven al lado del cliente

Saludos, Don


Si bien no es perfecto, puede marcar el campo para estirar con desbordamiento. Esto al menos te daría todos los datos. En tu archivo jrxml sería similar a:

<textField isStretchWithOverflow="true" hyperlinkType="None"> <reportElement style="Report Sub-Title" x="0" y="84" width="802" height="20"/> <textElement/> <textFieldExpression class="java.lang.String"><![CDATA["For the period ...]]></textFieldExpression> </textField>

Me temo que no conozco ninguna característica de los informes de Jasper que permita el cambio de tamaño dinámico del ancho de las columnas. Probablemente sea una de esas cosas que tiene sentido para HTML pero poco sentido para otros formatos de salida como PDF.


Los desarrolladores tomaron la decisión consciente de no permitir que el ancho de la celda se estire. Para que las columnas cambien su ancho en función del contenido, debe hacerlo a través de la programación. Una herramienta útil: DynamicJasper .

DynamicJasper crea informes dinámicamente, definiendo en tiempo de ejecución las columnas, ancho de columna (ancho automático), grupos, variables, fuentes, tablas, tablas cruzadas, informes secundarios (que también pueden ser dinámicos), tamaño de página y todo lo demás que puede definir en tiempo de diseño .


En iReport hay una opción llamada "Stretch Type". Seleccione "Relativo a la altura de la banda"