2017-09-07 19 views
0

RawPrinterHelperを使用して領収書に中国語文字を印刷する際に問題があります。私はPrintDocumentを使って正確に領収書を印刷することができますが、XPSとtxtとしてのみ使用できます。RawPrinterHelperを使用したPOS領収書の中国語文字の印刷

文字列は、RawPrinterHelperに送信されるバイト配列に変換されます。問題は、1文字が3バイトに等しいことです。それで、それが印刷されるとき、それは3つのランダムな文字を表示します。

例:バイトに変換{229164167}であり、印刷時とき 漢字は大ある:大

iは印刷に使用レシートプリンタである:EPSON TM-U220 POSTECH RP76III

+0

(UTF-8/UnicodeはANSI文字列として扱われる)あなたは、文字列のエンコーディングの問題をしたようです。関連するコード部分と 'RawPrinterHelper'によって与えられる出力を与えることができますか? –

+0

プログラミングマニュアルを読む必要があります。アクティブな文字セットを切り替えるコマンドがあります。 –

答えて

0

漢字を印刷する前に、中国語モードを有効にする必要があります。私はJavaでやっていますが、似ているはずです。

addTwoArrays(byteArrayOf(0x1c,0x26), toBytes(chineseText,"CP936")) 

詳細については、プリンタの仕様を参照してください。 上記のコマンドは次のとおりです。FS &

enter image description here

関連する問題