Вопрос

У меня есть проблема, пытающаяся преобразовать документ PDF в документ PCL с помощью Ghostscript.

Оригинальный документ PDF - это ландшафт, и поэтому PCL также должен быть. Тем не менее в Windows с использованием Ghostscript 9.14 со следующими функциями команды:

gswin32 -dNOPAUSE -dBATCH -sDEVICE=ljet4 -dSAFER -dAutoRotatePages=/NONE -sPAPERSIZE=a4 -sOutputFile=./convert_windows.pcl ./duplicate_windows.pdf
.

Тот же команда в Ubuntu Linux INELEL версии 3.2.0-40-универсальный 64 бит - но с ghostscript 9.05 - приводит к неправильному ориентированному файлу PCL-файла A3 вместо A4 в качестве оригинала.

Исходный файл PDF содержит шрифт Windows «Arial», который также должен быть доступен в Linux. Пакет «Msttorcefonts» устанавливается на Linux. Это короткий экстракт fontmap of ghostscript:

cat /usr/share/ghostscript/9.05/Resource/Init/Fontmap.GS
.

дает:

% This font, and only this font among the Hershey fonts, uses
% the SymbolEncoding.

/Hershey-Symbol                         (hrsyr.gsf)     ;       % 5066567

/Arial                                  /ArialMT                ;
/Arial,Bold                             /Arial-BoldMT           ;
/Arial,Italic                           /Arial-ItalicMT         ;
/Arial,BoldItalic                       /Arial-BoldItalicMT     ;
.

Следующий список показывает выходную строку командной строки Linux, которая является тем же выходом, что и из консоли Windows Ghostscript!

GPL Ghostscript 9.05 (2012-02-08)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Processing pages 1 through 2.
Page 1
Loading NimbusMonL-Bold font from /usr/share/fonts/type1/gsfonts/n022004l.pfb... 3627296 2211468 1767360 473754 3 done.
Loading NimbusSanL-Bold font from /usr/share/fonts/type1/gsfonts/n019004l.pfb... 3668288 2319461 1807728 497748 3 done.
Loading NimbusSanL-Regu font from /usr/share/fonts/type1/gsfonts/n019003l.pfb... 3800176 2466391 1827912 512832 3 done.
Loading NimbusMonL-Regu font from /usr/share/fonts/type1/gsfonts/n022003l.pfb... 3964224 2617715 1969200 654805 3 done.
Page 2
.

Я Алрею попробовал несколько вариантов ghostscript, как

-dFIXEDMEDIA
-dNORAGEPAGESIZE
.

и другие.

При преобразовании документа PDF в PS результат одинаково в обеих средах.

У кого-нибудь есть опыт с этой проблемой или идеей?

Спасибо заранее и вроде пожелания

Это было полезно?

Решение 2

Это может быть возможным решением, которое работает в моем случае. Предсловит: Ghostscript версия 8.6.0 или выше!

Преобразование PDF в PS не с командой GS, но с GS Wrapper PDF2PS , который является частью пакета Ghostscript:

pdf2ps input.pdf output.ps
.

Но: для ландшафтных документов PDF Это работает только с версии 8.60 или выше! В противном случае ландшафтные документы будут напечатаны в портрете.

Преобразование PDF в PCL сработало для меня, используя следующую команду:

gs -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=ljet4 -sPAPERSIZE=a4 -sOutputFile=output.pcl -c "<< /InputAttributes << currentpagedevice /InputAttributes get { pop null } forall >> dup 0 << /PageSize [ 595 842 ] >> put >> setpagedevice" save pop -f input.pdf
.

Но: Эта команда основана на документации ошибки ошибки 689919 ghostscript (см. http://bugs.ghostscript.com/show_bug.cgi?id=689919 ) и работает для портретных документов, только если вы установили версию 8,60 или выше. Поскольку у меня есть три разных среды, которые я могу одобрить, что эта команда работает с версии 8.60. Я использовал версии 8.16, 8,62 и 9,05.

Для версий 8.62 и 9.05 Ghostscript Обе команды работали правильно для PDF -> PS и PDF -> PCL для ландшафта и портрета.

Другие советы

Это вряд ли кто-то может вообще помочь, не увидев оригинальный файл PDF, поэтому я бы предложил открыть отчет об ошибках и прикрепить там файл PDF.

Несколько наблюдений:

-дауторы имеет эффект только при создании файла PDF, а не при интерпретации.

Переключатель -dfixmedia должен быть -dfixedmedia, аналогично норным страницам, должно быть norangePagesize

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top