&gt; On Martes 06 Abril 2010 15:25:09 Boris Perez Canedo escribi&oacute;: <br />&gt;&gt;
&gt; On Viernes 02 Abril 2010 14:33:23 Boris Perez Canedo escribi�: <br />&gt;&gt;
&gt;&gt; Hola, <br />&gt;&gt; &gt;&gt; <br />&gt;&gt; &gt;&gt; Es posible rotar una
tabla con su <br />&gt;&gt; <br />&gt;&gt; contenido en reportlab? Sucede que <br
/>&gt;&gt; &gt; �No <br />&gt;&gt; <br />&gt;&gt; ser�a preferible cambiar la
orientaci�n a landscape en vez de portrait <br />&gt;&gt; <br />&gt;&gt; &gt; para esas
p�ginas en concreto?� <br />&gt;&gt; <br />&gt;&gt; �Hola y gracias por <br />&gt;&gt;
la respuesta, <br />&gt;&gt; <br />&gt;&gt; Soy bastante nuevo con reportlab. C�mo hago
para hacer <br />&gt;&gt; lo que dices arriba? y c�mo puedo determinar si una consulta
me va producir <br />&gt;&gt; una tabla que se saldr� de los l�mites para entonces
cambiar la <br />&gt;&gt; orientaci�n para esas p�ginas? <br />&gt;&gt; <br />&gt;&gt;
<br />&gt;&gt; Saludos, <br />&gt;&gt; Boris. <br />&gt;&gt; <br />&gt;&gt; <br
/>&gt;&gt; --- <br />&gt;&gt; La mejor vacuna contra el virus A(H1N1) es la higiene
personal <br />&gt;&gt; <br />&gt; cuando generes el documento utiliza
pagesize=landscape(A4) <br />&gt; A4 si es el tama&ntilde;o de p&aacute;gina que usas.
<br />&gt; Te pego el siguiente c&oacute;digo de ejemplo de las listas de reportlab: <br
/>&gt; def go(): <br />&gt; doc = SimpleDocTemplate(&quot;phello.pdf&quot;) <br />&gt;
Story = [Spacer(1,2*inch)] <br />&gt; style = styles[&quot;Normal&quot;] <br />&gt; for
i in range(100): <br />&gt; bogustext = (&quot;This is Paragraph number %s. &quot; % i)
*20 <br />&gt; p = Paragraph(bogustext, style) <br />&gt; Story.append(p) <br />&gt;
Story.append(Spacer(1,0.2*inch)) <br />&gt; from reportlab.lib.pagesizes import A4,
LETTER, landscape, portrait <br />&gt; doc.pagesize = landscape(A4) <br />&gt;
doc.build(Story, onFirstPage=myFirstPage, onLaterPages=myLaterPages)&nbsp;<br /><br
/>Hola,&nbsp;<br />Ya&nbsp; probe lo del landscape, pero aun asi las tablas se salen del
area, en verdad son muy grandes, lo que hice fue dividirlas en otras tablas utilizando
esta funcion:<br /><br /><font size="2">
<p>def split(table, table_style, table_align, availableSpace,tablas = []):</p>
<p>tb = Table(table)<br />tb.setStyle(table_style)<br />tb.hAlign = table_align<br />if
tb.minWidth() &lt;= availableSpace:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
tablas.append(tb)</p>
<p>else:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; indexes = range(len(table[0]))<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; indexes.sort(reverse = True)<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for x in indexes:<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pos = x<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newTable = [
y[0:x] for y in table]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;tb = Table(newTable)<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tb.setStyle(table_style)<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tb.hAlign =
table_align<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if
tb.minWidth() &lt;= availableSpace:<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
tablas.append(tb)<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break&nbsp;<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; splitNew = [y[pos:] for y in table]<br
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;split(splitNew, table_style, table_align,
availableSpace, tablas)<br /><br />Me funciona bastante bien, pero hay que tener cuidado
con los estilos porque si al dividir una tabla resulta una que tiene solo una columna y
el estilo general define mas de una columna te da un error de indice.<br />Tengo un
problema para definir el valor para availableSpace este debe ser igual al por ejemplo
A4[0] - 2*margen. C&oacute;mo obtengo el margen?<br /><br />Saludos,<br />Boris.<br
/><br /></p>
</font><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<p></p>
<hr>
<p>La mejor vacuna contra el virus A(H1N1) es la higiene personal</p>
</body>
</html>