如何在Epson TM-T20(USB)上打印繁体中文

时间:2011-09-05 01:05:07

标签: c# encoding cjk

背景:我正在开发一个C#的POS软件,需要在收据上打印繁体中文字符。

硬件:EPSON TM-T20通过USB连接进行通信

代码:

            string text = "鄆";

            StringBuilder builder = new StringBuilder();

            // Traditional Chinese (big5)
            var encoding = Encoding.GetEncoding(950);

            // convert the text into a byte array
            byte[] source = Encoding.Unicode.GetBytes(text);

            // convert that byte array to the new codepage. 
            byte[] converted = Encoding.Convert(Encoding.Unicode, encoding, source);

            // take multi-byte characters and encode them as separate ascii characters 
            string result = Encoding.GetEncoding("ISO-8859-1").GetString(converted);

            // Print
            m_Printer.PrintNormal(PrinterStation.Receipt, "\u001b|N" + result + "\n");

这是jkealey在http://blog.lavablast.com/post/2010/01/15/Simplified-Chinese-on-Epson-TM-T88IV-Receipt-Printer.aspx

提供的代码

问题:在使用jkealey提供的代码之前,打印机打印出“?”而不是中文字符,但现在打印出“ÜP”。

在Epson TM-T20实用程序Ver.1.00上,我对代码页和国际字符集进行了以下字体设置。 (因为我是新用户,我无法发布图片)

代码页:PC850(多语言) 国际性格:中国

我不知道我在哪里出错了,请有人帮我解决这个问题。

非常感谢先进!

林檎

0 个答案:

没有答案