首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyfpdf Python中的土耳其语字符

Pyfpdf Python中的土耳其语字符
EN

Stack Overflow用户
提问于 2020-02-06 03:52:32
回答 1查看 334关注 0票数 0

我想使用包含土耳其字符的文本在我的Python应用程序中创建一个pdf,但是我得到了一个错误。我的代码如下。我该如何解决这个问题呢?

代码语言:javascript
复制
# -*- coding: utf-8 -*-
from fpdf import FPDF
import os

def add_image(image_path):
    pdf = FPDF()
    pdf.add_page()

    epw = pdf.w - 2 * pdf.l_margin
    pdf.set_font('Arial', 'B', 14.0)
    txt = u'ATATÜRK LİSESİ 2019 2020 EĞİTİM ÖĞRETİM YILI 11C SINIFI'
    stxt = txt.encode('iso-8859-9')
    pdf.cell(epw, 0.0, stxt, align='C')

如果我使用下面的代码,我得到一个'UnicodeEncodeError:‘拉丁文-1’编解码器无法在位置60编码字符'\u0130‘:序数不在范围(256)’错误

代码语言:javascript
复制
epw = pdf.w - 2 * pdf.l_margin
pdf.set_font('Arial', 'B', 14.0)
txt = 'ATATÜRK LİSESİ 2019 2020 EĞİTİM ÖĞRETİM YILI 11C SINIFI'
#stxt = txt.encode('iso-8859-9')
pdf.cell(epw, 0.0, txt, align='C')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-06 05:35:25

我将'tr-arial.ttf‘字体下载到应用程序文件夹中,找到了以下解决方案:

代码语言:javascript
复制
epw = pdf.w - 2 * pdf.l_margin
txt = u'ATATÜRK LİSESİ 2019 2020 EĞİTİM ÖĞRETİM YILI 11C SINIFI'
pdf.add_font('tr-arial', '', 'tr-arial.ttf', uni=True)
pdf.set_font('tr-arial', '', 11)
pdf.cell(epw, 0.0, txt, align='C')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60083154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档