1

我正在打印使用以下凭据生成的 EPS 文件。

%-12345X@PJL JOB
@PJL ENTER LANGUAGE = POSTSCRIPT 
%!PS-Adobe-3.0
%%Title: InvoiceDetail_combine
%%Creator: PScript5.dll Version 5.2.2
%%CreationDate: 10/7/2011 4:46:59
%%For: Administrator
%%BoundingBox: (atend)
%%Pages: (atend)
%%Orientation: Portrait
%%PageOrder: Special
%%DocumentNeededResources: (atend)
%%DocumentSuppliedResources: (atend)
%%DocumentData: Clean7Bit
%%TargetDevice: (HP Color LaserJet 4500) (2014.200) 0
%%LanguageLevel: 2
%%EndComments

在 Ricoh Afficio 2090 或任何其他驱动程序/打印机上进行选择打印时,在纸张上打印以下错误

错误:未定义
违规指令:F4S47
堆:

.

请回顾并建议转身,因为我已经陷入了这个地狱。我试图在 PS 中转换/提取,但都是徒劳的。我正在使用 gsview 打印和查看这些文件。

4

2 回答 2

3

这就是问题:

%%PageOrder:特殊

不能重新排序具有“特殊”页面顺序的 ps 文档。您不能对此文件进行选择或范围,因为它已被破坏用于此用途。您必须使用 Distiller 或 ghostscript(ps2ps 或 ps2pdf)重新处理文件,以便从文档中打印选定或重新排序的页面。

您可以通过使用真正的Postscript™ 驱动程序(不是由 Microsoft 创建的)生成 postscript 文件来避免这种情况。

GSView文档对此有更多的了解。

之前:

这条线...

%%TargetDevice: (HP Color LaserJet 4500) (2014.200) 0

... 告诉我们该文件是使用 HP 打印机作为目标生成的。所以这真的不是EPS文件。因为它不是可封装的。要在打印机上生成输出,文件必须执行showpage操作符,这对于 EPS 文件是禁止的。

所以取消选中 EPS 框(无论如何,这是一个很大的谎言),然后选择(安装)一个 Generic Postscript 驱动程序。如果您需要将其发送到多个品牌的打印机,则该文件需要对打印机做出尽可能少的假设。

于 2011-10-10T06:19:01.113 回答
2

首先,这不是一个有效的 EPS 文件,因为它在前面附加了 PJL。许多 PostScript 打印机会去掉这一点,但绝不是全部。

这可能不是问题的根源。

由于您没有提供完整的 PostScript 程序,因此无法“查看”问题。没有它,就无法判断实际出了什么问题,错误消息会告诉您解释器在尝试解析令牌时遇到了“F4547”,并且这还没有被定义为例程。

该文件很可能已损坏,或者以某种方式损坏,或者它可能是一个二进制文件,并且已由某些进行过某种转换的进程传输(CR/LF 很常见)。有问题的命令看起来像它的 ASCIIHex 编码,所以这可能是一个红鲱鱼。

如果您需要额外的帮助,您将不得不在某个地方提供整个程序。

于 2011-10-09T18:17:26.870 回答