On Jul 19, 2012, at 11:10, Roldan Darío Vargas Gómez <[email protected]>
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
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/