今天通过reportlab生成PDF文档时发现使用自带的字体输出中文时是方形的小黑块,费了不少时间发现reportlab自带的字体格式不支持中文输出,所以找了个字体文件,如:simsun.ttf(宋体),然后注册,即可在PDF文档中输出中文,所以我断定:需要在产生的PDF文档中输出中文时,最好用一种支持中文输出的字体支持之。如有不同意见的朋友,欢迎交流学习。
代码:
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
pdfmetrics.registerFont(TTFont('simsun', 'simsun.ttf'))
canvas.Canvas.setFont("simsun", 12)