如何在打印到PDF时修复ReportLab中文本的宽度?

时间:2012-11-18 19:34:25

标签: python pdf reportlab

我是ReportLab的新手。我想以固定宽度在PDF中打印一个字符串。也就是说,如果字符串长于宽度,它将自动转到第二行。我怎么能这样做?

这是我的代码,strange result。我不知道如何解决它......

from reportlab.pdfgen import canvas
from reportlab.platypus.frames import Frame
from reportlab.platypus.flowables import XBox

c = canvas.Canvas("hello.pdf")
x = XBox(width=50, height=100, text='abcaf a dsfadf asdfafasf  sdfa adsf asdf asdf afasdf df asdf asf asdf asfdsf asss')
f = Frame(x1=150, y1=50, width=200, height=200)
f.add(x, c)
c.save()

1 个答案:

答案 0 :(得分:0)

解决此问题的最佳方法是使用Platypus并将文本放在Paragraph flowables中。如果你不使用Platypus,你必须自己负责换行计算。