我需要创建一个混合了英语和阿拉伯语文本的 PDF,我可以使用下面的代码来做到这一点(从 Google Noto 字体下载 NotoSansArabic-Regular.ttf)。但问题是阿拉伯文本从左到右出现,但它应该从右到左出现。例如。它应该是 'مرحبا' 而不是 'ابحرم'。请有任何建议
下面是生成PDF的代码
from datetime import datetime
def getFileName():
now=datetime.now()
time = now.strftime('%d_%H_%M_%S')
filename = "Test_UTF_"+time + ".pdf"
return filename
from fpdf import FPDF
pdf = FPDF()
#Download NotoSansArabic-Regular.ttf from Google noto fonts
pdf.add_font("NotoSansArabic", style="", fname="./fonts/NotoSansArabic-Regular.ttf", uni=True)
pdf.add_page()
pdf.set_font('Arial', '', 12)
pdf.write(8, 'Hello World')
pdf.ln(8)
# مرحبا Marhaba in arabic
pdf.set_font('NotoSansArabic', '', 12)
text = 'مرحبا'
pdf.write(8, text)
pdf.ln(8)
pdf.output(getFileName(), 'F')