Как сделать так, чтобы хорватские символы правильно отображались на всех платформах в формате PDF? - PullRequest
0 голосов
/ 24 февраля 2012

Я создал этот небольшой PostScript для создания тестовой страницы:

100 100 moveto
/Courier findfont 10 scalefont setfont
(This is croatian characters test: ) show
/scaron glyphshow
/dcroat glyphshow
/ccaron glyphshow
/cacute glyphshow
/zcaron glyphshow
/Scaron glyphshow
/Dcroat glyphshow
/Ccaron glyphshow
/Cacute glyphshow
/Zcaron glyphshow
showpage

Я запустил его через оболочку ps2pdf в Linux (в Fedora 13 и Enterprise выпуске 5), и полученный PDF-файл показывает хорошийна этих системах.Однако, если я пытаюсь открыть документ в системе Windows (проверено на Windows XP, Vista и 7), символы / dcroat, / ccaron, / cacute, / Dcroat, / Ccaron и / Cacute вообще не отображаются!Может кто-нибудь указать мне правильное направление о том, где может быть проблема и, возможно, решение?

Я пробовал это через несколько версий GS, последней из которых является GPL Ghostscript 8.71 (2010-02-10),Результат всегда одинаков.Полученный PDF-файл можно найти здесь (прокрутите страницу вниз, чтобы увидеть текст).

Ответы [ 2 ]

1 голос
/ 26 февраля 2012

Используйте gs (Ghostscript) вместо ps2pdf, чтобы преобразовать файл PostScript в PDF.(ps2pdf - это всего лишь простая оболочка вокруг командной строки Ghostscript.)

Поскольку вы используете Courier (который является одним из шрифтов 'base 14'), Ghostscript по умолчанию будет NOT встроить шрифт в PDF.Это означает, что вам придется использовать дополнительную магию командной строки для принудительного встраивания Courier:

gs \
  -o croatian-glyphs.pdf \
  -sDEVICE=pdfwrite \
  -c ".setpdfwrite <</NeverEmbed [ ] /AlwaysEmbed [/Courier]>> setdistillerparams" \
  -f croation-glyphs.ps

Примечание , что при запуске этой команды на моем Mac я вижу только 4хорватские символы в выводе (scaron, Scaron, Zcaron и Zcaron).Причина этого в том, что мой Курьер не имеет всех хорватских глифов, которые были запрошены (и, следовательно, не может их встроить).

Однако , если вы запустите эту команду в системе, в которой есть Courier, включая другие глифы, и если вы передадите мне свой полученный PDF, я смогу увидеть глифы очень хорошо (так какшрифт или, по крайней мере, подмножество используемых глифов теперь встроено в PDF).

0 голосов
/ 24 февраля 2012

Попробуйте встроить шрифты с помощью ps2pdf -dEmbedAllFonts=true ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...