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
とにかく間違ったインポートが機能する理由はわかりませんが。