Printing 通过MediaPosition指定打印机纸盘不符合纸盘设置

Printing 通过MediaPosition指定打印机纸盘不符合纸盘设置,printing,postscript,Printing,Postscript,与Konica Minolta合作时,我将向其发送PostScript命令。大多数情况下,一切正常,我能够使用MediaPosition命令切换托盘。打印机有4个纸盘,打印机显示屏上的纸盘设置设置为“信头”、“信头”、“信头”和“普通” 我使用以下方法成功地在托盘之间切换: <</ManualFeed false /MediaPosition 0>> setpagedevice 你知道是什么导致了这个问题吗?更重要的是,如何解决这个问题,使打印机在不冻结和要求更改纸盘纸

与Konica Minolta合作时,我将向其发送PostScript命令。大多数情况下,一切正常,我能够使用
MediaPosition
命令切换托盘。打印机有4个纸盘,打印机显示屏上的纸盘设置设置为“信头”、“信头”、“信头”和“普通”

我使用以下方法成功地在托盘之间切换:

<</ManualFeed false /MediaPosition 0>> setpagedevice

你知道是什么导致了这个问题吗?更重要的是,如何解决这个问题,使打印机在不冻结和要求更改纸盘纸张设置的情况下继续打印?

我看不出这与Ghostscript有什么关系,Ghostscript在所描述的过程中使用在哪里

页面设备参数在某种程度上取决于设备,通常被视为请求。例如,您可以设置/双工,如果没有双工器,设备通常会忽略它。(即请求被忽略)

但是,某些页面设备请求可能会产生其他影响,这些影响记录在第三版PostScript语言参考手册(我的副本中为p446)第6.2.7节“未满足的参数请求”中

解释器可以以多种方式响应此类未满足的参数请求 方法,例如忽略它、引发PostScript错误或显示消息 在设备的前面板上,请求人工操作员进行干预

在没有看到确切的PostScript程序的情况下,不可能准确地说出发生了什么,但我猜解释器会认为,无论出于何种原因,它都无法满足托盘1的请求,因为它的MediaType不匹配(它需要纯文本,而您已将其定义为信头)。切换托盘的方式可能会改变当前的MediaType(或者可能是MediaType之外的其他参数)。我设想最初MediaType不在字典中,因此您可以切换到任何其他托盘。更换托盘时,由于您已在控制面板上定义了介质类型,因此托盘会选择新的介质类型。当您尝试切换回时,当前媒体类型与您尝试切换到的托盘的媒体类型不匹配

添加
/MediaType(信头)
不起作用的原因很可能是因为您说您已将信盒定义为包含
信头。PostScript区分大小写,因此信头与信头不同

或者可能是纸盒设置与MediaType不一样。恐怕这种设备依赖性对每个制造商来说都是非常具体的,唯一能告诉你需要发送什么的人可能是打印机制造商自己的工程师

<</Duplex true /Tumble false>> setpagedevice