[Python-es] Reportlab - Contenido de Tablas sin ajuste a celdas

Roldan Darío Vargas Gómez roldandvg en gmail.com
Jue Jul 19 21:40:35 CEST 2012


Buenas tardes

Gracias por indicarme el camino a seguir para solventar el inconveniente
presentado, me fue de mucha utilidad para realizar los correctivos
necesarios y así obtener la salida esperada.

Saludos,
*
--------------------------------------
Ing. Roldan D. Vargas G.
Analista Desarrollador
Linux Counter 400001*


El 19 de julio de 2012 11:39, Jose Caballero <jcaballero.hep en gmail.com>escribió:

>
>
>
>
> On Jul 19, 2012, at 11:10, Roldan Darío Vargas Gómez <roldandvg en gmail.com>
> wrote:
>
> Buenos días
>
> Ante todo un cordial saludo a todos los miembros de esta lista.
>
> Soy nuevo en esta lista, y me gustar saber si alguno de los miembros de la
> lista posee, tiene, o dispone de alguna solución para un inconveniente que
> poseo (del cual no he encontrado la respuesta en Internet) al momento de
> generar un reporte en PDF con ReportLab usando la clase Table del módulo
> platypus.
>
> La interrogante es que al querer generar una tabla en el reporte y la
> misma posee cierta cantidad de celdas con un texto variable extraído de una
> base de datos el cual puede ser muy pequeño y/o muy grande, el contenido se
> excede de los límites de la celda y lo que deseo es que al llegar a dicho
> límite el texto continúe en la siguiente línea de la misma celda.
>
> Un extracto del código que realiza la operación para la generación del
> reporte es el siguiente:
>
>
> --------------------///----------------------///--------------------------///------------------------
> from reportlab.platypus import SimpleDocTemplate, Table
> from reportlab.lib.styles import getSampleStyleSheet
> from reportlab.lib.pagesizes import LETTER, landscape, portrait
> from reportlab.lib.enums import TA_CENTER
>
> estiloHoja = getSampleStyleSheet()
> story = []
> cuerpo = estiloHoja["BodyText"]
> cuerpo.alignment=TA_CENTER
>
> datos = [[texto1_bd,texto2_bd,texto3_bd],[texto4_bd,texto5_bd,texto6_bd]]
> #donde textox_bd es el texto que proviene directamente de la Base de datos
>
> tabla = Table(data=datos,colWidths=[80,450,50])
>
> story.append(tabla)
>
> doc = SimpleDocTemplate("reporte.pdf",pagesize=portrait(LETTER),
> leftMargin=1, rightMargin=1, topMargin=2, bottomMargin=2)
> doc.build(story)
> *
> *
> --------------------///----------------------///--------------------------///------------------------
>
>
> El resultado en el archivo PDF se puede ver de la siguiente manera:
>
> ______________________________________
> *| encabezado1 | encabezado2 | encabezado3 |*
> *| ejemplo txt    | texto 2           | este texto deb|*ería ir en la
> siguiente línea de esta celda
>
>
>
> --------------------///----------------------///--------------------------///------------------------
>
>
>
> Hola,
>
>
> Nunca he usado reportlab, por lo que no puedo ser de gran ayuda.
> Aun asi he buscado en google "reportlab platypus wrap text in cell" y creo
> que el primer link tiene la solucion. O al menos te dara una idea de por
> donde seguir investigando.
>
>
> Suerte,
> Jose
> [perdon por la ausencia de tildes]
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120719/e84a858e/attachment.html>


Más información sobre la lista de distribución Python-es