Я попробовал загрузить шрифт, поддерживающий арабские буквы, и закодировать файл .txt, декодировать его обратно для записи в PDF с использованием UTF-8.
После запуска кода переменная txt с кодированием ='utf-8' содержит слова правильно, как они появляются в .txt-файл. В PDF-файле слова отображаются неправильно. Таким образом, проблема заключается в создании PDF-файла.
Код: Выделить всё
pdf = fpdf.FPDF(format='letter')
# Read text file
name = 'mqal.txt'
with open(name, 'r', encoding="utf-8") as f:
txt = f.read()
pdf.add_page()
# freeserif because it support arabic letters
pdf.add_font('FreeSerif', '', 'FreeSerif.ttf', uni=True)
pdf.set_font('FreeSerif', '', 12)
pdf.multi_cell(0, 5, txt,0,'R')
pdf.ln()
pdf.cell(0, 5, 'End')
pdf.output("mqal8.pdf")
Малаат Нодо, Адхам Таавтах, О Дааук, О Аббат, На Нод Лакма, Паткб, Адабт На, Да, конечно, вы можете начать писать статью, не следя за ней. Никаких конкретных правил или шагов, и без изучения основ написания статьи все, что вам нужно сделать, это сесть перед компьютером, начать выдавливать свои идеи и преобразовывать их непосредственно в письменный текст. Часто результат будет больше похож на написанную речь. Это, конечно, если вы не являетесь экспертом в написании статей.
Как я могу создать арабский текст, правильно отображаемый справа налево, в PDF-файле с помощью FPDF?
Подробнее здесь: https://stackoverflow.com/questions/588 ... ly-in-fpdf
Мобильная версия