embedFonts жалуется на «Неизвестное устройство: pswrite»

Запустив embedFonts в каком-то файле EPS, который я создал, я получаю сообщение об ошибке:

> embedFonts("foo.ps")
Unknown device: pswrite
Unrecoverable error: undefined in .uninstallpagedevice
Operand stack:
    defaultdevice
Error in embedFonts("foo.ps") : 
  status 1 in running command 'gs -dNOPAUSE -dBATCH -q -dAutoRotatePages=/None -sDEVICE=pswrite -sOutputFile=/tmp/Rtmp3Lv0dj/Rembed2cd86df573a1 '-sFONTPATH='  'foo.ps''

Как я могу избежать этой ошибки?


person MvG    schedule 03.07.2014    source источник


Ответы (1)


Это потому, что в наши дни устройство называется ps2write. Прекращена поддержка написания постскриптума уровня 1. Следующий выпуск R (в настоящее время мы находимся на 3.1.0, так что это может быть около 3.2) будет содержать исправление. Цитата из списка изменений:

embedFonts() теперь по умолчанию равно format = "ps2write" для файлов .ps и .eps. Это доступно в Ghostscript 9.x (с 2010 г.), тогда как предыдущее значение по умолчанию, format = "pswrite", было удалено в 9.10.

Таким образом, быстрое решение состоит в том, чтобы вручную передать format = "ps2write" вызову embedFonts.

person MvG    schedule 03.07.2014