Tengo una lista de texto para agregar a un marco de reportlab
style = getSampleStyleSheet()['Normal'] style.wordWrap = 'LTR' style.leading = 12 for legend in legends: elements.append(Paragraph(str(legend),style))
Si la leyenda es demasiado larga, el texto al final no es visible en absoluto. Cómo introducir saltos de línea en esta situación.
Esto puede o no puede aplicarse, pero acabo de enterarme de que \n
que normalmente uso para introducir nuevas líneas en cadenas de Python se ignora por el objeto Paragraph de ReportLab.
De una lista de correo aprendí que dentro de Párrafo, puede usar los
de HTML para introducir la nueva línea.
Eso funciona bien para mi.
Como dice PolyGeo , puede usar
para agregar nuevas líneas a un párrafo.
Convertir nuevas líneas a tags
replace('\n','
\n')
Código actualizado
for legend in legends: content = str(legend).replace('\n','
\n') elements.append(Paragraph(content, style))
style.wordWrap = 'LTR'
Lo siento si entendí mal esto como una letra , pero el párrafo en sí está “ajustado”, en relación con el tamaño de la página del documento también.
Hay un valor de uso de ‘CJK’ para el idioma asiático, posiblemente su configuración haga el texto para buscar la línea de llegada de acuerdo con otra cosa, como la división de palabras en el idioma asiático. Establecer en Ninguno debe hacer la cosa.