首页 > 解决方案 > 在 reportlab 生成的 PDF 中未正确呈现印地语字体

问题描述

我正在使用一个简单的 Python 文件来生成 PDF。Python 输出是正确的,但 PDF 输出有这个问题:

在此处输入图像描述

这不是这些印地语单词的正确格式。

这是原文:अतिदेय राशि के पुनर्भुगतान हेतु अनुस्मारक</p>

fileName = 'MyDoc.pdf'
title = 'श्रीमान मुख्य अभियंता संदर्भ संख्या'

from reportlab.pdfgen import canvas
from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase import pdfmetrics

pdfmetrics.registerFont(TTFont("mangal", "Lohit-Devanagari.ttf"))
pdf = canvas.Canvas(fileName)
# ###################################
pdf.setFont('mangal', 36)
pdf.drawCentredString(300, 770, title)
pdf.save()

这是输出的 pdf 文件:Lohit-Devanagari.ttf是印地语的 unicode 字体 在此处输入图像描述

标签: pythonfontspdf-generationreportlabhindi

解决方案


推荐阅读