打印机控制语言 - 打印图像x坐标

时间:2015-06-12 18:45:13

标签: image-processing printing printer-control-language

我正在尝试使用Windows命令行中的LPR打印图像,但我无法更改x y坐标。我已阅读HP文档,它看起来像* p#X * p#Y是语法。我尝试使用文本并且它工作正常,但是一旦我尝试使用图像,无论我输入什么数字,它都不会从0改变。这就是内容的样子。

   %-12345X@PJL USTATUS DEVICE CODE=40020@PJL COMMENT Source Technologies ST-912@PJL SET PAGEPROTECT = AUTO@PJL SET LIMAGEENHANCE = OFF@PJL SET LCOLLATION = OFF@PJL SET LMULTIPAGEPRINT = OFF@PJL SET LPARM : PCL LFONTCOMPATIBILITY = PCL5@PJL LJOBINFO USERID = "SYSTEM" HOSTID = "WOW"@PJL SET RESOLUTION = 600@PJL SET TIMEOUT=0@PJL ENTER LANGUAGE=PCL
E&u600D*t600R&l3A&l0o0.08c150e8144F&l7H&l1X

PA250.250&%STHPASSWORD$ &%1B$&l0o0.8c150e6336F *p250X*p750Y&%1B266C3178307331683261363666306F3165316C382E3030431B2661304C1B28733130481B266B31322E3030481B266631793358$


&%STQ$
*p250X*p750YCOLEMAN, JANE$

你会注意到底部有一个COLEMAN,JANE根据它前面的坐标正确改变。顶部是使用reaConverter转换的图像。图像打印正确,但始终位于左上角。我试图改变 p250X p750Y部分,但它没有做任何事情。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我在PCL做过一些小工作,这普遍是一种痛苦。因为它是基于转义码的语言,所以这些星号实际上是字符“ESC”的十六进制输入。为了使打印机正确解释命令,您需要以十六进制或字节格式发送命令,并且我不知道如何使用命令行执行此操作。

This link有一个我用于转义序列的引用。根据我的理解,PJL被插入标准PCL内部。因此,由于您的主要初始化代码表明您需要使用PCL5,因此大量时间都在盯着手册。

总之,转义代码需要正确发送,并且您的命令必须完全按照打印机的预期格式进行格式化。