使用Ghostscript rip ps文件时如何绕过媒体选择命令到打印机?

时间:2012-05-16 10:53:44

标签: ghostscript

我正在尝试使用GhostScript首先在计算机上翻录PostScript文件,然后通过USB连接将它们转发到ricoh MP1350打印机,但是失败了。所以我特此请求帮助。详情如下。

按照www.stat.tamu.edu/~henrik/GSPSPrinter/GSPSprinter.html提供的说明,我成功地在装有Win7的PC上构建虚拟PS打印机。

我使用MP1350 PS驱动程序设置虚拟PS打印机,创建带有指令的参数的重定向端口RPT1,在RedMon的帮助下,所有打印数据都被转发到通过USB与PC连接的真实MP1350设备。

它在处理常见的打印作业时起作用。但是,当我发送包含MP1350的媒体选择命令的PostScript文件时,似乎无法告诉打印机在该PS文件中告知托盘2或3或4中的纸张。所有纸张都放在纸盘1中。

打印命令为:

  

copy / b sample.ps \\ 127.0.0.1 \ gspspr

其中“gspspr”是虚拟PS打印机的打印机名称,安装了MP1350 PS驱动程序Ver3.1(最新版本)。 “sample.ps”是​​我上面提到的postscript文件。

参数文件“mswinpr2.txt”写成如下:

-Ic:\gs\gs9.05\lib
    -sDEVICE=mswinpr2
    -dNoCancel
    -dNOPAUSE
    -dSAFER
    -dMaxBitmap=400000000
    -dBufferSpace=400000000
    -dNumRenderingThreads=2
    -dMaxPatternBitmap=80000000
    -sPAPERSIZE=a4

使用相同的PostScript文件“sample.ps”,如果我使用此命令发送它:

  

copy / b sample.ps \\ 127.0.0.1 \ gsprinter

其中“gsprinter”是通过USB连接的实际MP1350的名称,安装了MP1350 PS驱动程序Ver3.1(最新版本)。打印机MP1350可以告诉这些介质选择命令,并从托盘2或3或4中获取纸张。

这两个设备的所有驱动程序设置都是相同,我在“设备设置”中将输出协议设置为“ TBCP ”标签

所以请帮我告诉一下,当我使用gs来翻录那个ps文件时,为什么打印机无法选择某些媒体托盘?以及如何解决?

非常感谢!

2 个答案:

答案 0 :(得分:1)

PostScript文件包含介质和纸盘选择命令,如果您将PostScript直接发送到打印机,则打印机会对这些命令执行操作。

使用Ghostscript时,实际上是将PostScript渲染为位图,mswinpr2设备将其转发到Windows打印系统。最终的打印机可以是任何东西,它不一定是PostScript打印机。但是,您无法在位图中嵌入托盘选择命令,因此无法将该请求保留在原始作业中。

没有办法'解决'这个过程的本质。

鉴于您的打印机直接明确接受PostScript,您为什么甚至使用Ghostscript?

答案 1 :(得分:0)

如果您的打印机了解PCL5或PCL6,您可以通过ghostscript翻录您的文件,并使用ghostscript将postscript MediaPosition映射到类似HP的打印机中的托盘。 两个ghostscript驱动程序--ljet4(或其中一个pcl5?)和pxlcolor, 可以将postscript mediaposition映射到HP媒体托盘。另请参阅有关InputAttributes字典和-dNOMEDIAATRS开关的讨论。 http://bugs.ghostscript.com/show_bug.cgi?id=693053