Проблема с django-pisa pdf на языке дивехи

Я создал PDF-файл с помощью Django-pisa. Содержимое PDF-файла берется из базы данных, которая имеет правильное выравнивание, но не может сделать это правильно в PDF-файле....

Я использовал:

filename = "/home/anoop/DjangoCodes/hello.pdf"
    c = '''<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <style type="text/css">
    @font-face {font-family: code2000;src: url(dhivehi.otf.ttf);}
    html {font-family: code2000;dir: rtl;unicode-bidi:bidi-override;}
    </style>
    </head><body><div dir='rtl'>%s</div></body></html>''' % content_text
    print c
    pdf = pisa.CreatePDF(c,file(filename, "wb"))
    if not pdf.err:
        pisa.startViewer(filename)

content_text содержит текст дивехи.

Пример: content_text: އެގޮތުން އައްޑޫގެ މަރަދޫ އާއި މަރަދޫފޭދޫ އާއި ފޭދޫ އަށްވެސް އުދަ އަރާފައިވާ ކަމަށް ކަމަށް ކަމަށް

        text in pdf:  ‫ށަމަކ ާވިއަފާރައ ަދުއ ްސެވްށައ ޫދޭފ ިއާއ ޫދޭފޫދަރަމ ިއާއ ޫދަރަމ ެގޫޑްއައ ްނުތޮގެއ‬

person anoop    schedule 16.08.2012    source источник


Ответы (1)


Я столкнулся с подобной проблемой и решил ее, просто изменив шрифты, которые могут отображать символы этого типа (например, Arial Unicode MS, DejaVuSerif).

Редактировать:

Я использовал библиотеку mpdf (поддержка юникода), которая написана на PHP для динамического создания PDF с русским языком (кириллица) и столкнулся с аналогичной проблемой. В то время я использовал шрифт arial, а затем переключился на шрифты ArialUni, DejaVuSerif, которые решили проблему.

person kwelsan    schedule 20.10.2012
comment
В нынешнем виде ваш ответ немного короток. Не могли бы вы предоставить более подробную информацию? - person Paul Hiemstra; 20.10.2012
comment
Большое спасибо, Arialuni исправила мои проблемы: D. Я использовал Code2000, и он не работает с японским текстом. - person ccsakuweb; 03.07.2016