提问者:小点点

ESC/POS Termal打印机UTF-8字符集设置


我试图用CITAQV8(它有一个termal打印机)打印一些货币,但它打印?,因为打印机字符集。

我有字节数组(UTF-8)数据要打印。但打印机已默认某些字符集。如何通过编程方式更改默认字符集(如使用字节数组)?我需要更改打印机字符集设置。

设备:CITAQV8(设备有一台termal打印机)PS:我找不到任何开发人员的文档。


共1个答案

匿名用户

可能不支持UTF-8作为字符集/代码表。

甚至只有某些型号才支持EPSON.
FS(C

选择字符编码系统

ASCII   FS (  C  pL pH fn m
Hex     1C 28 43 02 00 30 m
Decimal 28 40 67  2  0 48 m

TM-P20

1, 49  ASCII (ISCII)  ISCII: Indian Script Code for Information Interchange
2, 50  UTF-8          Unicode encoding system

TM-m30II,TM-m30II-H,TM-m30II-NT

1, 49  1-byte character encoding  Non-Unicode encoding method (ASCII [extended], Shift JIS, Big5, GB2312, GB18030, KS C, etc.)
2, 50  UTF-8                      Unicode encoding system

您需要使用以下两个ESC/POS命令设置打印机代码页,并且要请求打印的字符串在发送之前必须根据代码页进行编码和转换。

ESC试验

选择字符代码表

ASCII   ESC t   n
Hex     1B  74  n
Decimal 27  116 n

ESC R

选择国际字符集

ASCII   ESC R   n
Hex     1B  52  n
Decimal 27  82  n

或者,您也可以创建要用位图图像打印的所有页面内容,并使用与图像打印相关的ESC/POS命令之一进行打印。
但是,这样做会很慢。