使用Ghostscript将PCL转换为PostScript

时间:2011-01-13 19:20:32

标签: printing solaris postscript solaris-10

所以我想使用Ghostscript将以PCL格式创建的文件转换为PostScript。

这是我的问题的主旨。我只是试图在命令行上运行它,但在最后阶段它必须在lp命令上运行,如 lp -d< gs什么东西

GPL Ghostscript 9.00(2010-09-14) 我将在Solaris 10服务器上运行它,但我相信任何Unix系统都应该类似。

bash-3.00# /usr/local/bin/gs -sDEVICE=pswrite     -dLanguageLevel=1     -dNOPAUSE -dBATCH -dSAFER     -sOutputFile=output.ps cms-form.pcl
GPL Ghostscript  9.00 (2010-09-14)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Error: /undefined in &k2G-210z100u0l6d0e63fa0V
Operand stack:

Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1910   1   3   %oparray_pop   1909   1   3   %oparray_pop   1893   1   3   %oparray_pop   1787   1   3   %oparray_pop   --nostringval--   %errorexec_pop   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--
Dictionary stack:
   --dict:1154/1684(ro)(G)--   --dict:0/20(G)--   --dict:77/200(L)--
Current allocation mode is local
Current file position is 30
GPL Ghostscript  9.00: Unrecoverable error, exit code 1

1 个答案:

答案 0 :(得分:8)

您正在使用 Ghostscript gs),它无法读入和解释PCL。

您应该使用 GhostPDL 解释PCL的组件:可执行文件名为pspcl6

然后是一个像

这样的命令
 pspcl6 ^
   -o out.pdf ^
   -sDEVICE=pdfwrite ^
    in.pcl

应将您的PCL转换为PDF。对于PostScript Level 2,请使用-sDEVICE=ps2write

但是,可能很难找到pspcl6的预编译二进制文件。尽管它是Ghostscript系列产品的一部分,但它并不为人所知。您可能需要构建+编译自己的版本from the sources

更新: