2013-01-19 73 views
1

我想用reportlab编写一些pdf格式的土耳其字符。 我使用休耕码来做到这一点。Reportlab pdf编码

c = Canvas("test.pdf") 
data="ğçİöşü" 
p = Paragraph(data.decode('utf-8'), style=styNormal) 

但它不显示我的数据在PDF。

输出继电器: ■C■O■ü

回答

0

确保您的文件是UTF-8编码,我也想这样做

data = u"ğçİöşü" 
+0

谢谢戈登的回答,但我已经尝试过化妆UTF-8文本。我无法理解制作文件utf-8的意思(关于文件/另存为>(UTF-8))。 – seleucia

+0

是的,确保文件保存在utf8中。或者,如果您愿意使用所有非ASCII字符的转义码(例如\ u0123),则可以使用任何编码,其中较低的7位与ASCII匹配, –

2

建议,确保数据变量是UTF-8如this answer to a similar question中所述,您需要使用支持角色的字体。

总之,试试这个:

pdfmetrics.registerFont(TTFont('Verdana', 'Verdana.ttf')) 
c.setFont("Verdana", 8)