我正在使用 ReportLab 通过 python 动态生成 pdf。
我希望一行文本在页面上居中。这是我目前拥有的具体代码,但不知道如何将文本水平居中。
header = p.beginText(190, 740)
header.textOut("Title of Page Here")
# I know i can use TextLine etc in place of textOut
p.drawText(header)
文本显示,我可以手动移动左侧位置,使文本看起来居中,但我需要以编程方式居中,因为文本将是动态的,我不知道会有多少文本。
原文由 jhanifen 发布,翻译遵循 CC BY-SA 4.0 许可协议
reportlab 画布有一个 drawCentredString 方法。是的,他们就是这样拼写的。
编辑:至于文本对象,恐怕你不知道。不过,您可以按照这些思路做一些事情:
显然,您可以使用其他页面大小。