Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 18, 2009 14:20:40

klesh
От:
Зарегистрирован: 2009-02-18
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Приветствую.
Есть скрипт, который генерит PDF файлы используя ReportLab. Используется стандартный arial.ttf из /Windows/Fonts/.

from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
pdfmetrics.registerFont(TTFont('Arial', 'arial.ttf'))
pdfmetrics.registerFont(TTFont('ArialBd', 'arialbd.ttf'))
pdfmetrics.registerFont(TTFont('ArialIt', 'ariali.ttf'))
pdfmetrics.registerFont(TTFont('ArialBI', 'arialbi.ttf'))
pdfmetrics.registerFontFamily('Arial',normal='Arial',bold='ArialBd',italic='ArialIt',boldItalic='ArialBI')
При просмотре файла - всё ок, но при печати - на некоторых компах вместо русского текста печатается текст в непонятной кодировке.
Кто-нибудь сталкивался?



Офлайн

#2 Фев. 18, 2009 14:24:07

klesh
От:
Зарегистрирован: 2009-02-18
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Сразу оговорюсь, что в инете куча тем про эту проблему _с клиентской стороны_ (т.е. как распечатать такой файл попавший в руки).
Как я понял, такая штука случается или из-за нестандартных шрифтов, или из-за странного способа из встраивания шрифта в pdf. Лечится установкой альтернативной PDF смотрелки..
А вот передо мной стоит задача создания PDF файла 100% открывающегося стандартной поставкой Adobe Reader'а..



Отредактировано (Фев. 18, 2009 14:26:02)

Офлайн

#3 Фев. 18, 2009 14:31:21

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

В шапке форума есть ссылка на поиск…
http://python.su/forum/viewtopic.php?pid=7078#p7078
Добавлено: Сорри, не дочитал 2 пост…
У меня проблем не с печатью нет. Может стоит другой шрифт попробовать.



Отредактировано (Фев. 18, 2009 14:33:25)

Офлайн

#4 Фев. 18, 2009 14:38:09

klesh
От:
Зарегистрирован: 2009-02-18
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Я в поиск первым делом сунулся, прочитал всё что есть про reportlab, но такой проблемы не нашел..

Хорошо, другая просьба. Может кто-нибудь дать мне PDF файл сгенерённый вами в ReportLab'е, чтобы проверить печать на тех компах где мой не печатается?
Если будет таже фигня - буду копать репортлаб, если всё ок будет - буду свой код копать..



Офлайн

#5 Фев. 18, 2009 15:01:20

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

проверь, нормально печатается, хотя шрифт Arial



Офлайн

#6 Фев. 18, 2009 15:47:55

klesh
От:
Зарегистрирован: 2009-02-18
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Нет, с половины офисных компов - каракули.
В общем проблема в том, что принтеру по какой-то причине нужен postscript формат шрифта, а reportlab встраивает ttf как truetype.
Остаётся непонятным, почему с двых абсолютно одинаковых компов получаются разные результаты.



Офлайн

#7 Фев. 18, 2009 16:16:17

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Хм… Я то думал, что вся офисная техника печатает в “raw”. Можно с разными шрифтами поиграться.
Или… Вариант “для практологов”:
Если документ не сложный, “напечатать” его на холсте, спомощью PIL, а потом прицепить в PDF :)



Офлайн

#8 Фев. 18, 2009 16:18:55

klesh
От:
Зарегистрирован: 2009-02-18
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема печати русского текста из pdf файлов ReportLab'а

Я сейчас попробую type1 использовать вместо ttf, с ними должно работать..
А если не получится, тогда да, буду уже про pil думать и прочие танцы..



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version