python自学码农的世界python源码大全

Python 生成PDF生僻字无效显示的问题

2019-02-19  本文已影响5人  iCloudEnd

在做个一个python 自动生成A4纸标签的程序,所以事情都做完了,最后发现竟然有些人都名字显示不全。
例如,有个同学叫“刘偲”,但是生成都PDF却无法显示

# encoding: utf-8
from reportlab.lib import colors
from reportlab.graphics.shapes import *
import labels
from reportlab.graphics import shapes
import os.path
import labels
import os.path
from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase.pdfmetrics import registerFont, stringWidth
from reportlab.graphics import shapes
from reportlab.lib import colors

base_path = os.path.dirname(__file__)
registerFont(TTFont('song', os.path.join(base_path, 'song.ttf')))
registerFont(TTFont('heiti', os.path.join(base_path, 'fangsong.ttf')))


d = Drawing(400, 200)
d.add(Rect(50, 50, 300, 100, fillColor=colors.yellow))
d.add(String(150,100, 'Hello World', fontSize=18, fillColor=colors.red))
d.add(String(180,86, '刘偲',fontName="heiti",fillColor=colors.red))
from reportlab.graphics import renderPDF
renderPDF.drawToFile(d, 'example1.pdf', 'My First Drawing')

效果


无法显示刘偲

解决方法
把字库换成微软雅黑就解决了,您所气人不,嘿嘿。

上一篇下一篇

猜你喜欢

热点阅读