打印到PDF后无法读取的文本

问题描述 投票:0回答:1

我需要将文本打印到PDF,但我打印的文本是非ascii。根据我的代码输出,它生成这样的东西

[][][][][][][] (一个盒子 ;) )

我正在试图弄清楚如何将非ascii文本打印到PDF。谢谢!

#!/usr/bin/env python
# -*- coding: utf-8 -*- 

def sample():
    pdf = fpdf.FPDF()
    pdf.add_page()
    text = '안녕하세요'
    pdf.add_font('DejaVu', '', 'fpdf\\unifont\\DejaVuSansCondensed.ttf', uni=True)
    pdf.set_font('DejaVu', '', 9)

    pdf.text(x=data_column, y=start_y + (3 * charheight),
                 txt=str(u": {0}".format(text)))

python unicode fonts fpdf
1个回答
2
投票

您使用的字体不支持韩文字符。 fpdf docs使用韩语的eunjin字体:

# Add a Alee Unicode font (uses UTF-8)
# General purpose Hangul truetype fonts that contain Korean syllable 
# and Latin9 (iso8859-15) characters.
pdf.add_font('eunjin', '', 'Eunjin.ttf', uni=True)
pdf.set_font('eunjin', '', 14)
pdf.write(8, u'Korean: 안녕하세요')
© www.soinside.com 2019 - 2024. All rights reserved.