【发布时间】:2018-02-26 21:02:52
【问题描述】:
我正在尝试在我的 reportlab 文档中添加长段落。
当我只添加整个文本时它会成功,例如:
self.story.append(Paragraph(text, STYLE_PARAGRAPH))
并使用
构建它self.doc.multiBuild(self.story, canvasmaker=MyCanvas)
问题是,不考虑换行符 (\n)。我尝试将它们替换为<br/>,但这似乎不受鸭嘴兽的支持,我收到br 标签未知的错误。
我的下一个尝试是将它分成单独的段落:
for p in text.replace('\r', '').split('\n'):
self.story.append(Paragraph(p, STYLE_PARAGRAPH))
导致:
reportlab.platypus.doctemplate.LayoutError: Splitting error(n==1) on page 47 in [...]
知道我做错了什么吗?
-- 更新--
正如亚当所说,<br/> 应该可以工作,但在我的情况下却没有。经过长时间的调试,我发现导入错误:
正确:
from reportlab.platypus import Paragraph
我的导入:
from reportlab.platypus.para import Paragraph
虽然我不知道为什么错误的导入仍然有效。
【问题讨论】: