ReportLab Python 水平居中对齐
ReportLab Python horizontal centre alignment
我正在尝试使用 reportlab 将简单文本水平居中放置在自定义大小的 PDF 上。我的代码如下。我试过使用 doc.drawCentredString 但这会切断文本的开头。现在,文本在左下角对齐。但是由于文本是动态的,所以我无法真正设置固定的水平位置,因为它不会总是居中。
我的代码是:
from reportlab.lib.units import mm
from reportlab.pdfgen.canvas import Canvas
doc = Canvas('document.pdf')
doc.setPageSize((72 * mm, 160 * mm))
doc.setFillColorRGB(1,0,0)
doc.setFont("Helvetica", 14)
doc.drawString(0,0,"Hello World")
doc.showPage()
doc.save()
谁能告诉我如何使文档的文本居中?
Canvas.drawCentredString()
将字符串的中心放在您指定的坐标中,它应该是页面的中心而不是 0。
from reportlab.lib.units import mm
from reportlab.pdfgen.canvas import Canvas
doc = Canvas('D:/w/document.pdf')
doc.setPageSize((72 * mm, 160 * mm))
doc.setFillColorRGB(1,0,0)
doc.setFont("Helvetica", 14)
x = doc._pagesize[0] / 2
doc.drawCentredString(x, 0, "Hello World")
doc.showPage()
doc.save()
我正在尝试使用 reportlab 将简单文本水平居中放置在自定义大小的 PDF 上。我的代码如下。我试过使用 doc.drawCentredString 但这会切断文本的开头。现在,文本在左下角对齐。但是由于文本是动态的,所以我无法真正设置固定的水平位置,因为它不会总是居中。
我的代码是:
from reportlab.lib.units import mm
from reportlab.pdfgen.canvas import Canvas
doc = Canvas('document.pdf')
doc.setPageSize((72 * mm, 160 * mm))
doc.setFillColorRGB(1,0,0)
doc.setFont("Helvetica", 14)
doc.drawString(0,0,"Hello World")
doc.showPage()
doc.save()
谁能告诉我如何使文档的文本居中?
Canvas.drawCentredString()
将字符串的中心放在您指定的坐标中,它应该是页面的中心而不是 0。
from reportlab.lib.units import mm
from reportlab.pdfgen.canvas import Canvas
doc = Canvas('D:/w/document.pdf')
doc.setPageSize((72 * mm, 160 * mm))
doc.setFillColorRGB(1,0,0)
doc.setFont("Helvetica", 14)
x = doc._pagesize[0] / 2
doc.drawCentredString(x, 0, "Hello World")
doc.showPage()
doc.save()