我有一些代码,我希望每10个字符将长字符串包装起来,然后使用reportlab将其添加到PDF中:
我就是这样做的:
text = '*long_text_long_text_long_text_long_text*'
text = "\n".join(wrap(text, 10))
canvas.drawString(5,227, text)
我的pdf是创建的,但我想打破的线条,我只能看到黑色的矩形。你可以看到附图:
你能帮帮我吗?谢谢!
发布于 2022-10-29 07:56:02
单独放置每一行的另一种方法是使用以下段落:
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A5
from reportlab.platypus import Paragraph
text = "long text<br />long text<br />long text<br />"
text_width=A5[0] / 2
text_height=A5[1] / 2
x = A5[0]/4
y = A5[1]/4
pdf = canvas.Canvas(filename="test.pdf", pagesize=A5)
styles = getSampleStyleSheet()
p = Paragraph(text, styles["Normal"])
p.wrapOn(pdf, text_width, text_height)
p.drawOn(pdf, x, y)
pdf.save()
除了支持手动放行中断之外,这一段还支持自动换行。
https://stackoverflow.com/questions/43119284
复制相似问题