ZPL代码中的注释行

时间:2014-10-16 14:32:32

标签: zebra-printers zpl

我想对ZPL代码中的行进行注释,例如:

^XA
^MMT
^LL0531
^PW1280
^LS0
^FT81,528^A0B,29,28^FH\^FDTEXT^FS               
// ^FT336,495^A0B,29,33^FH\^FDEAN^FS^FX         ----
//^BY3,2,42^FT384,492^BEB,,Y,N                  Commented lines
//^FD789690466123^FS                            ----
^PQ1,0,1,Y^XZ

我想要这个,因为有时我的变量是null并且不想打印条形码。 这个有可能?或者不打印条形码的最佳方法是什么?

4 个答案:

答案 0 :(得分:4)

简短的回答是“无法完成。”

评论指标为^FX,之后字符将被忽略 - 评论结束为any ^ or ~ command,这会使^FX无用。< / p>

除非添加了“阻止注释”命令,并且使用特定的开始/结束阻止注释助记符设置,否则抱歉 - 您运气不佳。

然而,

所有不是相当

^XA
^FT336,495^A0B,29,33^FH\^FDEAN^FS^FX
^BY3,2,42^FT384,492^BEB,,Y,N
^FD789690466123^FS
^MMT
^LL0531
^PW1280
^LS0
^FT81,528^A0B,29,28^FH\^FDTEXT^FS               
^PQ1,0,1,Y^XZ

将识别要评论的行。

^FT336,495^A0B,29,33^FH\^FDEAN^FS^FX
^BY3,2,42^FT384,492^BEB,,Y,N
^FD789690466123^FS
^XA
^MMT
^LL0531
^PW1280
^LS0
^FT81,528^A0B,29,28^FH\^FDTEXT^FS               
^PQ1,0,1,Y^XZ

会忽略它们,因为^XZ^XA之间的数据会被忽略。

答案 1 :(得分:1)

我在代码中将该行构建为字符串变量并将我的注释放在串联中 - 然后将整个字符串发送到打印机,注释将留在后面。

 StringBuilder sb = New Stringbuilder("");
 sb.append("^XA");
 sb.appendLine("^MMT");
 sb.appendLine("^LL0531");
// sb.append("this line will be commented out");
// sb.append("this line will be commented out");
// sb.append("this line will be commented out");
 sb.appendLine("^PQD,0,1,Y^XZ");

string s = sb.toString();

这样的事情。你可能会使用“if-else&#39;声明而不是注释,以确定它是否保留在字符串中。

答案 2 :(得分:0)

一种方法是不发送与您不想打印的字段相关的命令行。对于您提供的示例,只需从//.

开始消除(不发送)三行

答案 3 :(得分:0)

  

@Mangoo

     

简短的回答是“无法完成。”

     

注释指示符是^ FX,此后的字符将被忽略-但是注释结束是使^ FX无效的任何^或〜命令。

不一定。我发现在注释掉变量以放入测试信息时,^ FX非常有用。在这种情况下,用任何^或〜命令触发注释结束实际上是有用的。

使用变量作为字段数据。

^XA^PQ1
^FO12,15^A0N,36,33^FDTitle^FS
^FO210,15^A0N,36,33,^FDInfo^FS
^FO750,15^A0N,165,150^FD|Variable.Number|^FS
^FO90,60^BY4,3.0^BCN,90,N,N,Y,N^FD|Variable.Number|^FS
^XZ

注释掉测试信息和变量。

^XA^PQ1
^FO12,15^A0N,36,33^FDTitle^FS
^FO210,15^A0N,36,33,^FDInfo^FS
^FO750,15^A0N,165,150^FDTestNumber^FX|Variable.Number|^FS
^FO90,60^BY4,3.0^BCN,90,N,N,Y,N^FDTestNumber^FX|Variable.Number|^FS
^XZ

这使得可以在调整格式的同时使用测试信息,而不会丢失原始变量名。您还可以使用它来进行如下信息性评论:

^FX This is a test label.

^XA^PQ1

^FX This is the title.
^FO12,15^A0N,36,33^FDTitle^FS

^FX This is the info.
^FO210,15^A0N,36,33,^FDInfo^FS

^FX This is the number.
^FO750,15^A0N,165,150^FD|Variable.Number|^FS

^FX This is the barcode.
^FO90,60^BY4,3.0^BCN,90,N,N,Y,N^FD|Variable.Number|^FS

^XZ