我使用GoLabel应用程序开发了一个客户端服务器打印系统,使用Godex打印机打印标签。在该系统中,打印作业请求从客户端发送到服务器,服务器使用GoLabel生成PRN代码。并且prn代码再次发送给客户端。
系统主要工作,但在客户端同时发送多个请求的情况下,服务器会打开Golabel的多个实例,这会导致CPU峰值。
要解决此问题,我想准备一个EZPL模板并在此EZPL字符串中插入参数。
我将此方法与ZPL代码一起使用。这是一个ZPL代码示例:
^XA
^BY2,3,100^FT30,156^BCN,,Y,N,,A
^FD==Parameter0==^FS
^FO20,15^A0N,25,20^FB350,4,0,C
^FD==Parameter1==^FS
^PQ1,0,1,Y^XZ
在C#代码中,我从数据库中检索信息并将它们插入到此字符串中,代替Parameter0和Parameter1。
当我检查GoLabel生成的EZPL代码时,我不明白godex打印机如何获取这些参数。例如:
^Q152,3
^W101
^H5
^P1
^S3
^AD
^C1
^R0
~Q+0
^O0
^D0
^E16
~R255
^XSET,ROTATION,0
^L
Dy2-me-dd
Th:m:s
Y2242,86,Image12-14
Y1900,105,WindowTextBox10-24
Y2060,2662,WindowTextBox8-49
Y782,88,WindowText6-36
Y330,2540,WindowText5-48
Y216,2541,WindowText4-33
Y94,2531,RichTextImage3-48
Y89,2652,WindowText2-88
Y1262,97,WindowTextBox1-88
Y581,2478,Image0-96
Lo,2209,92,2220,3490
Lo,1930,2461,2188,2472
BH,758,36,9,22,582,1,1,12345678901
E
有没有办法以编程方式将参数作为字符串插入(在C#中)?如果这不可能,我如何将文本值分配给Golabel生成的参数(例如,在此行中," Y89,2652,WindowText2-88",将我的原始数据分配到WindowText2-88字段) 。最重要的是,如何将我的图像放入此EZPL模板中?