Zebra ZPL的新系列

Lit*_*Dev 12 zpl zebra-printers

  1. 如何为"文本"添加换行符?比如说:

你好,世界

将成为 Hello World

无论如何,我可以为我的代码添加一个新行字符吗?

^FT78,76^A0N,28,28^FH\^FDHello\nWorld^FS
Run Code Online (Sandbox Code Playgroud)
  1. 如果我的标签中的"文字"太长,我该怎么把另一条线放到它上面呢?

小智 11

用于\&换行

^FT78,76^A0N,28,28^FH\^FDHello\&World^FS
Run Code Online (Sandbox Code Playgroud)


Jon*_*est 10

我建议你把Thorsten和Dharmesh的答案结合起来以达到最大效果:

^FB400,2,0,C^FO0,50
^FDHello\&World^FS
Run Code Online (Sandbox Code Playgroud)

这样做会产生如下标签:

结果说

这种方法的好处是两个:首先,文本块将适当地定位和对齐新行.其次,您可以完全控制断线实际发生的位置.


Eth*_*han 5

^FX 不理解 \n,您需要向其传递 \0A(相当于 \n 的十六进制)ASCII wiki 页面

所以你的 ZPL 应该是这样的

^FT78,76^A0N,28,28^FH_^FDHello_0AWorld^FS
Run Code Online (Sandbox Code Playgroud)

我将十六进制字符更改为 _ 与 \,以便其他人在完成后查看此字符时不会感到困惑。

Jason 关于使用 ^FB 命令的想法是一个很好的主意。它有一些奇怪的属性(带有文本旋转),但总的来说是文本换行。


Tho*_*mar 5

我知道这个问题已经很老了,但是我发现^FB命令(字段块)实际上非常适合包装文本:

我用这样的一行:

^A0R,54,54^FO505,3424^FB630,2,0,L,0^FDThis is a pretty long line of text^FS
Run Code Online (Sandbox Code Playgroud)

它很好地包裹成两行。您唯一需要注意的是,换行似乎仅在空格处发生,而不是在逗号或任何其他标点符号处发生。


Yos*_*sem -5

不幸的是,你不能真正做到这一点。您可能发现文本太长,它会绕回同一行。您必须创建一个新行来容纳文本。我忘记了该字符串中的哪些数字是位置(可能是 28,28)尝试添加一行,将其更改为 34,28 并查看它是否移动到下面的新行......只需玩这 4 个数字在那条线的前面。一个是字体大小(可能对您有帮助),另外两个是从顶部和右侧开始的位置。一种简单的使用方法是使用文本编辑器编辑文件,然后从命令行执行复制命令到打印机 UNC 路径,然后看看会得到什么。(即复制“C:\test.txt\127.0.0.1\zebra)。希望这会有所帮助。