У меня следующая настройка
$ epstopdf --version
epstopdf ($Id: epstopdf.pl 31784 2013-09-27 22:43:16Z karl $) 2.18
$ gs --version
9.10
$ tex --version
TeX 3.1415926 (TeX Live 2014/dev)
$ uname -a
Linux escritorio-01 3.12.5-302.fc20.x86_64 #1 SMP Tue Dec 17 20:42:32 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Я пытаюсь преобразовать файл .eps в .pdf. Я запускаю следующую команду
$ epstopdf untitled.eps --debug
* kpsewhich command: kpsewhich
* Input filename: untitled.eps
* Output filename: untitled.pdf
* BoundingBox comment: %%BoundingBox:
* Ghostscript command: gs
* Compression: on
* Embedding: on
* Rotation: None
* Resolution: [use gs default]
* Ghostscript pipe: gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=untitled.pdf -dPDFSETTINGS=/prepress -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true -dAutoRotatePages=/None - -c quit
* Binary junk at start of file: 0 byte(s)
* Scanning header for BoundingBox
* Old BoundingBox: 81 227 529 564
* New BoundingBox: 0 0 448 337
* Offset: -81 -227
GPL Ghostscript 9.10 (2013-08-30)
Copyright (C) 2013 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Can't find (or can't open) font file /usr/share/ghostscript/9.10/Resource/Font/NimbusSanL-Regu.
Can't find (or can't open) font file NimbusSanL-Regu.
Can't find (or can't open) font file /usr/share/ghostscript/9.10/Resource/Font/NimbusSanL-Regu.
Can't find (or can't open) font file NimbusSanL-Regu.
Querying operating system for font files...
Can't find (or can't open) font file /usr/share/ghostscript/9.10/Resource/Font/NimbusSanL-Regu.
Can't find (or can't open) font file NimbusSanL-Regu.
Didn't find this font on the system!
Substituting font Courier for NimbusSanL-Regu.
Can't find (or can't open) font file /usr/share/ghostscript/9.10/Resource/Font/NimbusMonL-Regu.
Can't find (or can't open) font file NimbusMonL-Regu.
Can't find (or can't open) font file /usr/share/ghostscript/9.10/Resource/Font/NimbusMonL-Regu.
Can't find (or can't open) font file NimbusMonL-Regu.
Didn't find this font on the system!
Unable to substitute for font.
Error: /invalidfont in /findfont
Operand stack:
120 Helvetica ISOLatin1Encoding Helvetica Helvetica
Execution stack:
%interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1884 1 3 %oparray_pop 1883 1 3 %oparray_pop --nostringval-- 1867 1 3 %oparray_pop 1755 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- 1836 5 5 %oparray_pop
Dictionary stack:
--dict:1174/1684(ro)(G)-- --dict:0/20(G)-- --dict:82/200(L)-- --dict:94/160(L)-- --dict:8/85(L)--
Current allocation mode is local
Last OS error: Not a directory
GPL Ghostscript 9.10: Unrecoverable error, exit code 1
epstopdf ($Id: epstopdf.pl 31784 2013-09-27 22:43:16Z karl $) 2.18
!!! Error: Writing to gs failed, error code 1
Это создает пустой файл .pdf. Кажется, есть связанное обсуждениев этом отчете об ошибке, о каком-то кэше, который не удалось обновить. Но технический уровень темы превосходит меня. Я действительно ничего не знаю о ghostscript. Тем не менее, похоже, проблема не столько в том, что ghostscript не может найти шрифты Nimbus*, сколько в том, что он не может их заменить. Может ли кто-нибудь мне помочь? Спасибо!
РЕДАКТИРОВАНО: РЕШЕНИЕ НАЙДЕНО. Я добавил ответ ниже. Спасибо всем
решение1
Ну, мне наконец-то удалось решить проблему, ну, в общем-то. Это скорее решение, чем ответ. Видимо,есть какой-то конфликтмежду ghostscript ипакет бесконечностииспользуется для лучшего отображения шрифтов в Unix (в Fedora отображение шрифтов по умолчанию ужасно). Поэтому мне придется удалить infinality :(
$ sudo yum remove -y freetype-infinality
Вот и все,epstopdf снова заработало. И теперь у меня снова ужасные шрифты!
Может быть, кто-то, кто немного больше разбирается в шрифтах, ghostscript и infinality, мог бы добавить в эту ветку реальный ответ на то, что происходит; а не просто простое решение, как у меня. Спасибо.
решение2
Вы всегда можете указать Ghostscript, где именно искать шрифты, используя
-sFONTPATH=...
переключатель непосредственно в командной строке:
gs -sFONTPATH=/usr/share/fonts;/some/other/path [...rest of command...]
В качестве альтернативы вы можете установить GS_FONTPATH
переменную окружения.
Для нескольких каталогов шрифтов используйте точку с запятой ;
в качестве разделителя.