如何使用ZPL II清除缓冲区[Zebra GK420d]

时间:2015-04-27 11:46:10

标签: progress-4gl zebra-printers zpl-ii

在ZPL II语言的文档中有命令" ~JA"允许清除缓冲区中的所有作业。

不幸的是,它似乎不适用于Zebra GK420d(但我也无法在打印机规格中找到任何关于它的信息)。

我可以打印标签,例如将此字符串发送到打印机:

PUT 
"^XA" SKIP
"^MMT" SKIP
"^LL1279" SKIP
"^PW799" SKIP
"^LS0" SKIP
"^BY5,3,387^FT633,947^B2B,400,Y,N,Y" SKIP
"^FD>:" v_value FORMAT 'x(8)' "^FS" SKIP
"^FT133,707^A0B,56,81^FH\^FD" v_value "^FS" SKIP
"^FT131,1100^A0B,56,81^FH\^FDVALUE:^FS" SKIP
"^PQ1,0,1,Y^XZ" 
SKIP.

然后,如果缓冲区中有超过2个标签,我尝试用以下内容清除缓冲区:

PUT 
"^XA" SKIP
"~JA" SKIP
"^XZ" SKIP
.

没有结果。

我也只尝试过     放     "〜JA"跳跃     

再次没有结果。

我找不到任何有关它无法正常工作或如何使用Zebra GX420d的信息。

你能帮帮我吗?使用此打印机可能无法做到这一点。

感谢您的帮助。

最诚挚的问候, Wiktor的

2 个答案:

答案 0 :(得分:7)

Tilde(〜)是进度默认转义字符。使用两个波浪线绕过:

PUT "~~JA" SKIP.

您还可以查看PUT语句的CONTROL选项。

  

CONTROL 表达式

     

表达式指定要发送的控制序列,而不会影响当前行,页计数器和ABL中维护的位置。在CONTROL之后,表达式可以是字符串表达式或RAW变量。它可以包含NULL或NULL(表达式)形式的空字符常量,其中expression指定要发送的NULL数。

示例:

PUT STREAM A CONTROL "~033A" NULL.

答案 1 :(得分:0)

希望这可以帮助某人,取自手册EPL2_Prog.pdf

N =清除图像缓冲区 说明:此命令在构建新标签图像之前清除图像缓冲区。

  

始终在N命令之前发送换行符(LF),以确保命令缓冲区中的先前数据已清除,并且打印机已初始化并准备接受命令。

请勿在存储的表单中使用N命令。