Tom*_*oli 19 printing zpl-ii zpl
我的任务是使用网络Zebra GK420T重新设计系统以打印运输标签.我已经能够完美地发送ZPL打印作业,但我似乎无法打印出unicode字符,例如西里尔字母.我使用Seagull Scientific驱动程序将lucida sans unicode字体下载到打印机,我使用以下ZPL代码进行测试:
^XA
^LH100,150
^CWT,E:TT0003M_.FNT
^CFT,30,30
^CI28
^FT0,0^FDTesting 1 2 3^FS
^FT0,50^FD?? ????????^FS
^FT0,100^B3^FDAAA001^FS
^XZ
Run Code Online (Sandbox Code Playgroud)
它将打印'Testing 1 2 3'和条形码,但它留下一个空格而不是西里尔字符.我做错了什么,比如没有逃避字符或什么东西,或者打印机有问题吗?
提前致谢
编辑:我尝试使用Zebra瑞士unicode字体,现在它打印俄语字符作为问号.我已经更新了上面的代码以反映它.
Tom*_*oli 18
我刚刚发现你需要转义ASCII以上的字符,首先^FH在任何^FD可能包含utf字符的字段之前放置,你需要在utf-8十六进制代码前加下划线
_D0_94将打印为Ä.我的最终ZPL代码如下:
^XA
^LH100,150
^CWT,E:TT0003M_.FNT
^CFT,30,30
^CI28
^FT0,0^FH^FDTesting 1 2 3^FS
^FT0,50^FH^FD_D0_94_D0_BE _D1_81_D0_B2_D0_B8_D0_B4_D0_B0_D0_BD_D0_B8_D1_8F^FS
^FT0,100^B3^FDAAA001^FS
^XZ
Run Code Online (Sandbox Code Playgroud)
我只需要创建一个生成转义序列的方法,这应该更容易!
小智 11
我有同样的问题,你应该^FH在^FD包含特殊字符的任何(字段数据)命令之前添加一个(字段十六进制指示符),在我的情况下我需要西班牙语字符,所以我不得不使用^CI28(更改国际字体/编码)
sample:要打印Alvaro Jesús Pérez Peñaranda
我们需要将这些特殊字符转换为UTF 8 Hex代码并在每个代码前添加_,结果如下:Alvaro Jes_c3_bas P_c3_a9rez Pe_c3_b1aranda
^XA
^CI28
^FO60,75
^ASN,36,20^FH^FDAlvaro Jes_c3_bas P_c3_a9rez Pe_c3_b1aranda^FS
^XZ
Run Code Online (Sandbox Code Playgroud)
我正在使用Zebra ZM400打印机并使用TT0003M_字体.
这个字体不打印哈萨克语西里尔字母.
如果你想打印cryillic + kazakh西里尔字母+拉丁字母,请使用ARI000.FNT(arial字体)
我正在使用以下方法将char转换为十六进制代码
我希望这有帮助
stringConverTextToHex(stringtext)
{
stringnewText="";
char[]charArray=text.ToCharArray();
foreach(charcincharArray)
{
switch(c)
{
case'?':
newText+="_D0_B9";
break;
case'?':
newText+="_D0_99";
break;
case'?':
newText+="_D1_86";
break;
case'?':
newText+="_D0_A6";
break;
case'?':
newText+="_D1_83";
break;
case'?':
newText+="_D0_A3";
break;
case'?':
newText+="_D0_BA";
break;
case'?':
newText+="_D0_9A";
break;
case'?':
newText+="_D0_B5";
break;
case'?':
newText+="_D0_95";
break;
case'?':
newText+="_D0_BD";
break;
case'?':
newText+="_D0_9D";
break;
case'?':
newText+="_D0_B3";
break;
case'?':
newText+="_D0_93";
break;
case'?':
newText+="_D1_88";
break;
case'?':
newText+="_D0_A8";
break;
case'?':
newText+="_D1_89";
break;
case'?':
newText+="_D0_A9";
break;
case'?':
newText+="_D0_B7";
break;
case'?':
newText+="_D0_97";
break;
case'?':
newText+="_D1_85";
break;
case'?':
newText+="_D0_A5";
break;
case'?':
newText+="_D1_8A";
break;
case'?':
newText+="_D0_AA";
break;
case'?':
newText+="_D1_84";
break;
case'?':
newText+="_D0_A4";
break;
case'?':
newText+="_D1_8B";
break;
case'?':
newText+="_D0_AB";
break;
case'?':
newText+="_D0_B2";
break;
case'?':
newText+="_D0_92";
break;
case'?':
newText+="_D0_B0";
break;
case'?':
newText+="_D0_90";
break;
case'?':
newText+="_D0_BF";
break;
case'?':
newText+="_D0_9F";
break;
case'?':
newText+="_D1_80";
break;
case'?':
newText+="_D0_A0";
break;
case'?':
newText+="_D0_BE";
break;
case'?':
newText+="_D0_9E";
break;
case'?':
newText+="_D0_BB";
break;
case'?':
newText+="_D0_9B";
break;
case'?':
newText+="_D0_B4";
break;
case'?':
newText+="_D0_94";
break;
case'?':
newText+="_D0_B6";
break;
case'?':
newText+="_D0_96";
break;
case'?':
newText+="_D1_8D";
break;
case'?':
newText+="_D0_AD";
break;
case'?':
newText+="_D1_8F";
break;
case'?':
newText+="_D0_AF";
break;
case'?':
newText+="_D1_87";
break;
case'?':
newText+="_D0_A7";
break;
case'?':
newText+="_D1_81";
break;
case'?':
newText+="_D0_A1";
break;
case'?':
newText+="_D0_BC";
break;
case'?':
newText+="_D0_9C";
break;
case'?':
newText+="_D0_B8";
break;
case'?':
newText+="_D0_98";
break;
case'?':
newText+="_D1_82";
break;
case'?':
newText+="_D0_A2";
break;
case'?':
newText+="_D1_8C";
break;
case'?':
newText+="_D0_AC";
break;
case'?':
newText+="_D0_B1";
break;
case'?':
newText+="_D0_91";
break;
case'?':
newText+="_D1_8E";
break;
case'?':
newText+="_D0_AE";
break;
case'?':
newText+="_D3_91";
break;
case'?':
newText+="_D3_90";
break;
case'?':
newText+="_D3_93";
break;
case'?':
newText+="_D3_92";
break;
case'?':
newText+="_D3_99";
break;
case'?':
newText+="_D3_98";
break;
case'?':
newText+="_D3_9B";
break;
case'?':
newText+="_D3_9A";
break;
case'?':
newText+="_D3_95";
break;
case'?':
newText+="_D3_94";
break;
case'?':
newText+="_D2_91";
break;
case'?':
newText+="_D2_90";
break;
case'?':
newText+="_D1_93";
break;
case'?':
newText+="_D0_83";
break;
case'?':
newText+="_D2_93";
break;
case'?':
newText+="_D2_92";
break;
case'?':
newText+="_D3_B7";
break;
case'?':
newText+="_D3_B6";
break;
case'?':
newText+="_D2_95";
break;
case'?':
newText+="_D2_94";
break;
case'?':
newText+="_D1_92";
break;
case'?':
newText+="_D0_82";
break;
case'?':
newText+="_D1_90";
break;
case'?':
newText+="_D0_80";
break;
case'?':
newText+="_D3_97";
break;
case'?':
newText+="_D3_96";
break;
case'?':
newText+="_D2_BD";
break;
case'?':
newText+="_D2_BC";
break;
case'?':
newText+="_D2_BF";
break;
case'?':
newText+="_D2_BE";
break;
case'?':
newText+="_D1_94";
break;
case'?':
newText+="_D0_84";
break;
case'?':
newText+="_D3_82";
break;
case'?':
newText+="_D3_81";
break;
case'?':
newText+="_D2_97";
break;
case'?':
newText+="_D2_96";
break;
case'?':
newText+="_D3_9D";
break;
case'?':
newText+="_D3_9C";
break;
case'?':
newText+="_D2_99";
break;
case'?':
newText+="_D2_98";
break;
case'?':
newText+="_D3_9F";
break;
case'?':
newText+="_D3_9E";
break;
case'?':
newText+="_D3_A1";
break;
case'?':
newText+="_D3_A0";
break;
case'?':
newText+="_D1_95";
break;
case'?':
newText+="_D0_85";
break;
case'?':
newText+="_D1_9D";
break;
case'?':
newText+="_D0_8D";
break;
case'?':
newText+="_D3_A5";
break;
case'?':
newText+="_D3_A4";
break;
case'?':
newText+="_D3_A3";
break;
case'?':
newText+="_D3_A2";
break;
case'?':
newText+="_D1_96";
break;
case'?':
newText+="_D0_86";
break;
case'?':
newText+="_D1_97";
break;
case'?':
newText+="_D0_87";
break;
case'?':
newText+="_D3_80";
break;
case'?':
newText+="_D2_8B";
break;
case'?':
newText+="_D2_8A";
break;
case'?':
newText+="_D1_98";
break;
case'?':
newText+="_D0_88";
break;
case'?':
newText+="_D2_9B";
break;
case'?':
newText+="_D2_9A";
break;
case'?':
newText+="_D2_9F";
break;
case'?':
newText+="_D2_9E";
break;
case'?':
newText+="_D2_A1";
break;
case'?':
newText+="_D2_A0";
break;
case'?':
newText+="_D3_84";
break;
case'?':
newText+="_D3_83";
break;
case'?':
newText+="_D2_9D";
break;
case'?':
newText+="_D2_9C";
break;
case'?':
newText+="_D3_86";
break;
case'?':
newText+="_D3_85";
break;
case'?':
newText+="_D1_99";
break;
case'?':
newText+="_D0_89";
break;
case'?':
newText+="_D3_8E";
break;
case'?':
newText+="_D3_8D";
break;
case'?':
newText+="_D3_8A";
break;
case'?':
newText+="_D3_89";
break;
case'?':
newText+="_D2_A3";
break;
case'?':
newText+="_D2_A2";
break;
case'?':
newText+="_D3_88";
break;
case'?':
newText+="_D3_87";
break;
case'?':
newText+="_D2_A5";
break;
case'?':
newText+="_D2_A4";
break;
case'?':
newText+="_D1_9A";
break;
case'?':
newText+="_D0_8A";
break;
case'?':
newText+="_D3_A7";
break;
case'?':
newText+="_D3_A6";
break;
case'?':
newText+="_D3_A9";
break;
case'?':
newText+="_D3_A8";
break;
case'?':
newText+="_D3_AB";
break;
case'?':
newText+="_D3_AA";
break;
case'?':
newText+="_D2_A9";
break;
case'?':
newText+="_D2_A8";
break;
case'?':
newText+="_D2_A7";
break;
case'?':
newText+="_D2_A6";
break;
case'?':
newText+="_D2_8F";
break;
case'?':
newText+="_D2_8E";
break;
case'?':
newText+="_D2_AB";
break;
case'?':
newText+="_D2_AA";
break;
case'?':
newText+="_D2_AD";
break;
case'?':
newText+="_D2_AC";
break;
case'?':
newText+="_D1_9B";
break;
case'?':
newText+="_D0_8B";
break;
case'?':
newText+="_D1_9C";
break;
case'?':
newText+="_D0_8C";
break;
case'?':
newText+="_D1_9E";
break;
case'?':
newText+="_D0_8E";
break;
case'?':
newText+="_D3_B3";
break;
case'?':
newText+="_D3_B2";
break;
case'?':
newText+="_D3_B1";
break;
case'?':
newText+="_D3_B0";
break;
case'?':
newText+="_D3_AF";
break;
case'?':
newText+="_D3_AE";
break;
case'?':
newText+="_D2_AF";
break;
case'?':
newText+="_D2_AE";
break;
case'?':
newText+="_D2_B1";
break;
case'?':
newText+="_D2_B0";
break;
case'?':
newText+="_D2_B3";
break;
case'?':
newText+="_D2_B2";
break;
case'?':
newText+="_D2_BB";
break;
case'?':
newText+="_D2_BA";
break;
case'?':
newText+="_D2_B5";
break;
case'?':
newText+="_D2_B4";
break;
case'?':
newText+="_D3_B5";
break;
case'?':
newText+="_D3_B4";
break;
case'?':
newText+="_D2_B7";
break;
case'?':
newText+="_D2_B6";
break;
case'?':
newText+="_D3_8C";
break;
case'?':
newText+="_D3_8B";
break;
case'?':
newText+="_D2_B9";
break;
case'?':
newText+="_D2_B8";
break;
case'?':
newText+="_D1_9F";
break;
case'?':
newText+="_D0_8F";
break;
case'?':
newText+="_D3_B9";
break;
case'?':
newText+="_D3_B8";
break;
case'?':
newText+="_D2_8D";
break;
case'?':
newText+="_D2_8C";
break;
case'?':
newText+="_D3_AD";
break;
case'?':
newText+="_D3_AC";
break;
case'A':
newText+="_41";
break;
case'a':
newText+="_61";
break;
case'B':
newText+="_42";
break;
case'b':
newText+="_62";
break;
case'C':
newText+="_43";
break;
case'c':
newText+="_63";
break;
case'D':
newText+="_44";
break;
case'd':
newText+="_64";
break;
case'E':
newText+="_45";
break;
case'e':
newText+="_65";
break;
case'F':
newText+="_46";
break;
case'f':
newText+="_66";
break;
case'G':
newText+="_47";
break;
case'g':
newText+="_67";
break;
case'H':
newText+="_48";
break;
case'h':
newText+="_68";
break;
case'I':
newText+="_49";
break;
case'i':
newText+="_69";
break;
case'J':
newText+="_4A";
break;
case'j':
newText+="_6A";
break;
case'K':
newText+="_4B";
break;
case'k':
newText+="_6B";
break;
case'L':
newText+="_4C";
break;
case'l':
newText+="_6C";
break;
case'M':
newText+="_4D";
break;
case'm':
newText+="_6D";
break;
case'N':
newText+="_4E";
break;
case'n':
newText+="_6E";
break;
case'O':
newText+="_4F";
break;
case'o':
newText+="_6F";
break;
case'P':
newText+="_50";
break;
case'p':
newText+="_70";
break;
case'R':
newText+="_52";
break;
case'r':
newText+="_72";
break;
case'S':
newText+="_53";
break;
case's':
newText+="_73";
break;
case'T':
newText+="_54";
break;
case't':
newText+="_74";
break;
case'U':
newText+="_55";
break;
case'u':
newText+="_75";
break;
case'V':
newText+="_56";
break;
case'v':
newText+="_76";
break;
case'Y':
newText+="_59";
break;
case'y':
newText+="_79";
break;
case'Z':
newText+="_5A";
break;
case'z':
newText+="_7A";
break;
case'':
newText+="";
break;
default:
newText+=c;
break;
}
}
returnnewText;
}
Run Code Online (Sandbox Code Playgroud)
这是示例代码
^ SP ^ XA ^ PON ^ FS ^ FPH ^ FO102,63,0 ^ A @ N,60,60,E:ARIOOO_.FNT ^ FH ^ FD_42_75_72_61_6B _D0_A8_D3_99 ^ FS ^ XZ
可以使用免费的Zebra swiss unicode字体打印俄语和许多其他字符。它已作为大多数打印机包含在TT0003M_中,并支持罗马,西里尔,东欧,土耳其,阿拉伯,希伯来语。
对于打印日语或中文(具有数千个字符)的语言,您需要一台至少具有23 MB可用内存的打印机以及可以上载(称为下载)的TrueType字体文件。
可以从Zebra购买此文件(他们说您需要64 MB),但是我在Windows 7系统上的Fonts文件夹中找到了一个非常旧的TTF文件也非常成功:ARIALUNI.TTF 1.01(23.275.812 Bytes) ,Arial Unicode MS。它是由MS Office安装安装的,可能未获得此用途的许可。
您很可能还可以使用其他TTF文件,但是我只尝试了一个。
在此Zebra打印机上进行ZPL打印时,无需任何原始驱动程序(仅通用文本),但对于字体安装,则需要该驱动程序。如果有人知道如何在没有驱动程序的情况下将TTF文件发送到打印机,请发表评论。
我安装了Zebra设置实用程序,其中包括一个Fonts Downloader。单击“新建”,然后添加字体(必须在系统中安装),然后忽略包含226个字符的消息。还可以忽略如果您使用Unicode字符配置测试字符串,则它将无法正确显示。您正在询问是否要立即下载,这需要很长时间。
您可以通过列出目录内容(管理网页或打印输出)来检查安装。在我的情况下,该字体显示为ARI000.TTF。
要进行打印,您需要将ZPL文本作为UTF-8发送。您可以将此示例复制到记事本,然后在保存对话框中选择UTF-8:
^XA
^LH100,150
^CWT,E:ARI000.FNT
^CFT,30,30
^CI28
^FT0,0^FH^FDyour unicode characters here^FS
^XZ
Run Code Online (Sandbox Code Playgroud)
然后,为了进行测试,可以使用简单的复制命令将其发送到打印机:
如果是USB,则需要首先在网络中共享该打印机。
然后net use lpt1: \\localhost\sharename
,然后copy file.txt lpt1
我们测试了许多常见的日文和中文符号,并在具有32 MB闪存的ZT230打印机上以高质量很好地工作。
| 归档时间: |
|
| 查看次数: |
72596 次 |
| 最近记录: |