2013-01-19 75 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)