xslt - ZPL:无论文本长度如何,如何在标签上水平居中放置一行文本

标签 xslt zpl zpl-ii

我需要将一些文本在标签上水平居中,这样如果文本的长度 更改它仍将保持居中。

我正在使用 XSLT 来处理这样的格式:

        <!-- Position from Home (3.75",4.00")-->
        <xsl:text><![CDATA[^FT494,812]]></xsl:text>

        <xsl:text><![CDATA[^A0B,62,62]]></xsl:text>

      <!-- I am using the FB command to center the text -->
       <xsl:text><![CDATA[^FB500,1,0,C]]></xsl:text>

        <!-- Field Block -->
        <xsl:text><![CDATA[^FD]]></xsl:text>
        <xsl:value-of select="/lb:label/lb:MyDataField" />
        <xsl:text><![CDATA[^FS]]></xsl:text>

所以输出看起来像这样:

示例 A:

        123 Good Street
1234567890 1234567890 1234567890

例子:B

 123 Good Street
   1234567890

到目前为止,文本没有居中,结果如下所示:

        123 Good Street
        1234567890 1234567890 1234567890

最佳答案

我认为您的问题源于在字体中使用 B“自下而上”方向。我使用 ^FB 的唯一示例是 N“正常方向”中的字体。

^XA^ll800  
^FO0,0^A0N,62,62^FB500,1,0,C^FD123 Good Street^FS  
^FO0,0^GB500,100,2  
^XZ

结果:
enter image description here

关于xslt - ZPL:无论文本长度如何,如何在标签上水平居中放置一行文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45680623/

相关文章:

xml - 如何嵌套xsl :for-each selec

c# - 如何通过 ZPL 将 dpi 从 200 更改为 300

Swift - ZPL,打开打印机后第一次打印时打印正确,但之后每次打印都打印错误?

xml - XSLT 跳过节点

用于 XSL 转换的 XML 文本格式化

encoding - 斑马打印机: how to print UTF-8 special character

status - 当我通过串口向 Zebra 打印机发送 ZPL 命令时,它是否会返回消息?

c# - Zebra ZPL 自定义 header - 打印机解释

带有方形按钮的 Android 布局