打印机吐出“阶梯式”PostScript源代码

时间:2012-07-27 19:34:40

标签: pdf printing ghostscript postscript

尝试使用带有来自Kyocera 1370DN的ghostscript的pdf2ps打印从pdf创建的postscript时出现此错误:

%!PS-Adobe-3.0
              %%BoundingBox:  0  0  612  792
                                            %%Creator: GPL Ghostscript 905 (ps2write
  • 我检查过以确保环境变量中的路径正确。
  • 我清除了:%WINDIR%\ system32 \ spool \ printers中的打印机后台处理程序数据。
  • 我重新启动打印机和连接的电脑。
  • 我检查并打印了一个测试页。测试页面工作正常。
  • 每次都是相同的错误消息。
  • 我从该打印机打印了一些其他文件,打印效果很好。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

打印机支持PCL和PostScript,很可能需要(非PostScript!)HP PJL序列告诉打印机以下是PostScript。否则,它将假设数据是PCL。 PCL是一种二进制格式,当以7位ASCII格式呈现时,会将其视为文本并将其打印出来,这就是这里发生的事情。

尝试使用以下文件预先添加文件:

<ESC>%-12345X@PJL JOB
@PJL ENTER LANGUAGE=POSTSCRIPT

注意,这意味着ESCAPE ASCII字符代码,即0x1B

在文件末尾放置:

<ESC>%-12345X@PJL EOJ
<ESC>%-12345X

答案 1 :(得分:1)

您使用哪种方法将PostScript文件发送到打印机?

看起来您的打印机不是PostScript打印机,因此它看不到PostScript代码。

您正在发送PostScript代码,而打印机只能“看到”文本。所以它打印文本....

打印机也没有在行尾看到CR / LF代码,只看到LF代码。这就是为什么你看到这种阶梯效应。