【问题标题】:ReportLab: Text with large font size is crammed within paragraphReportLab:大字体的文本挤在段落中
【发布时间】:2012-08-14 09:38:23
【问题描述】:

使用 ReportLab,我想渲染一个大字体的文本块。现在,我的代码将文本放在一个段落中,这样它就可以被自动换行。但是,文本在渲染时会被挤在一起。

似乎没有考虑我为 Paragraph 对象指定的高度。我可以添加段落的属性来解决这个问题吗?

下面是我的代码:

from reportlab.pdfgen import canvas
from reportlab.lib.units import inch 
from reportlab.platypus import Paragraph
from  reportlab.lib.styles import ParagraphStyle
from reportlab.lib.enums import TA_CENTER

doc = canvas.Canvas('test.pdf')
p = ParagraphStyle('test')
p.textColor = 'black'
p.borderColor = 'black'
p.borderWidth = 1
p.alignment = TA_CENTER
p.fontSize = 100

para = Paragraph("THIS IS A REALLY LONG AND BIG STRING OF TEXT RIGHT HERE!!!!!", p)
para.wrapOn(doc,1200,1000)
para.drawOn(doc, 0.5*inch, 6*inch)
doc.save()

【问题讨论】:

标签: python django pdf reportlab paragraph


【解决方案1】:

答案是设置前导属性为120:

p.leading = 120

默认情况下,样式的 fontSize 为 10,前导值为 12。leading 参数指定从一个文本行前进到下一个文本行时向下移动的距离。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    相关资源
    最近更新 更多