我正在编写代码来打印植物园的标签。每个标签都是单独打印的,但每个标签上的信息不同。每个标签都包含一个科学名称,其大小差异很大,因此可以超过 2 行(我们的标签尺寸为 10 厘米宽 x 2.5 厘米高)。当我们超过 24 个字符时,我们的问题主要出现在名称上(参见带 ** 的行)。如果我们选择一个不超过 24 个字符的名称,那么它会打印得很好。任何更多它都不会打印。如果我们从标签中删除所有其他“项目”并只留下“名称”元素,那么它只打印前 24 个字符并截断其余字符(我们这样做是为了测试 ^FB 块和另一个元素之间是否可能重叠可能导致此问题)。
补充信息:我们在 BASIC 环境中编译此代码并使用诸如“:name:”、“:Acc.dt”:”之类的变量,如下所示。我们的数据库提供了这些信息,并且我们检查了任何内部例程会已经截断了长名称等。我们的代码在 ZPL 中运行良好,但我们最近不得不迁移到 ZPL II(我们购买了更新的型号 GX430t)并且不得不修改我们的 ZPL 代码,此时此问题开始出现。
这是我们的代码:
^XA
^LH40,40
^MMT
^PW1200
^LL1200
^FO16,05^A0N,35,^FDAcc. num.^FS
^FO170,05^A0,35,^FV":accnum:"^FS
^FO360,05^A0,35,^FV":qual:"^FS
^FO350,35^A0N,30,^FDAcc.dt.^FS
^FO450,35^A0N,30,^FB790,3,0,L,
^FH\^FV":accdt:"^FS
^FO430,70^^A0N,25,^FB790,3,0,L,
^FH\^FDProv. type^FS
^FO560,70^A0N,25,^FV":provtype:"^FS
^FO800,225^A0N,30,^FB790,3,0,L,
^FV":cc:"^FS
**^FO10,100^A0N,40,^FB790,3,0,L,
^FV":name:"^FS**
^FO1000,05^A0,35,^FV":proptype:"^FS
^FO5,225^A0,25^FVColl.^FS
^FO55,225^A0,25^FV":coll:"^FS
^FO375,225^A0,25,^FV":consstat:"^FS
^FO1000,70^A0,25,^FV":reqby:"^FS
^FO535,180^BCN,55,N,N,N^FV":qual:"^FS
^FO60,45^BCN,35,N,N,N^FV":accnum:"^FS
^PQ1,0,1,Y
^XZ
这是我们试图解决的问题(如果有些看起来像通配符,我们深表歉意):
- 更改标签上的字体类型、大小和位置;
- 将 ^FO 更改为 ^FT;
- 查看了我们内部的数据库逻辑;
- 带走^FH\;
- 更改 ^FB 行中的值(我们尝试了几乎所有可能的排列);
- 手动输入超过 24 个字符的名称(使用记事本 - 没有数据库/编译器) - 同样的问题。
对此的任何想法将不胜感激克里