2013-03-21 39 views
2

我正在嘗試使用包含用戶輸入的比薩創建PDF文檔。 用戶輸入可以在其他語言中。當試圖輸入中文或日文時,字符顯示爲黑色框。即使我不知道用戶輸入了什麼語言,我如何才能正確顯示PDF?使用比薩和非ASCII字符創建PDF

這裏是我試圖樣本:

import ho.pisa as pisa 
import StringIO 
import sys 

data = """ 
<html> 
    <head> 
     <title>Testing</title> 
     <meta http-equiv="content-type" content="text/html; charset=utf-8"> 
    </head> 
    <body> 
     <p>%s</p> 
    </body> 
</html> 
""" 

text = "" 
for line in sys.stdin: 
    text += line 

pisa.pisaDocument(StringIO.StringIO(data % text), file('final.pdf', 'w'), encoding='UTF-8') 
+0

獲取問題

@font-face { font-family: OtherFont; src: url(font/OtherFont.ttf); } body { font-family: OtherFont; } 

見第8條。 – 2016-01-27 14:50:48

回答

1

默認字體比薩用途不支持中國或日文字符。我能夠通過包含支持這些字符的字體文件並在css中使用它來獲取要顯示的字符。甚至重音符號的拉丁字母this documentation

+1

我用code2000購買了我看到日文字符是白色方塊,文件的其餘部分是自定義字體。你知道它爲什麼不起作用嗎?如果我在瀏覽器中顯示日文符號。 – ccsakuweb 2016-07-03 13:29:40