J'ai une liste de texte à ajouter à un cadre de reporterlab si la légende est trop longue, le texte à la fin n'est pas visible du tout.
Comment introduire des pauses de ligne dans cette situation. P> p>
3 Réponses :
style.wordWrap = 'LTR' Sorry if I misunderstood this as letter, but Paragraph itself is "word wrapped", in relation to document pagesize also.There's userguide value of 'CJK' for Asian language, possibly your setting do the text to search for finishing line according to something else, like Asian language word splitting. Set it to None should do the thing.
Ceci peut s'appliquer ou ne pas s'appliquer, mais je viens d'apprendre que à partir d'un Liste de diffusion J'ai appris qu'à l'intérieur Paragraphe Vous pouvez utiliser cela fonctionne bien pour moi. P> \ n code> que j'utilise normalement pour introduire de nouvelles lignes dans Python Strings est ignoré par l'objet de paragraphe de ReportLab. p>
code> de HTML pour introduire la nouvelle ligne. p>
code> et
code> travail. Mais code> lève un
ValueRorror: Paraparser: Erreur de syntaxe: Aucun contenu autorisé dans la balise BR code>
ReportLab utilise un analyseur XML afin qu'il soit plus xhtml que HTML signification que vous devez avoir une étiquette de fermeture.
Un peu de temps blanc avant et après la chaîne, provoquer une erreur lors des générations de rapport.
comme polygeo dit, vous pouvez utiliser Convertissez de nouvelles lignes en
code> pour ajouter de nouvelles lignes à Un paragraphe.
CODE> Tags strong> P> for legend in legends:
content = str(legend).replace('\n','<br />\n')
elements.append(Paragraph(content, style))
Je vous recommande de poster cela à signalerlab-users@lists2.reporlab.com, les listes de diffusion ne sont probablement pas très cool, mais la liste de diffusion de rapports est toujours la meilleure source d'informations :)
@juanefren cela est-il toujours vrai? J'ai trouvé que la documentation est toujours très superficielle.