Ich versuche, chinesische Zeichen auf einem Epson TM-T88IV M (paralleler Anschluss) unter Verwendung des Microsoft Point of Service SDK in C# zu drucken. Sie erscheinen jedoch als Fragezeichen auf dem Drucker.Drucken von vereinfachten chinesischen Zeichen auf Epson TM-T88IVM
Mein PosPrinter hat folgenden gültigen CharacterSetList (?): 255,437,850,852,858,860,863,865,866,936,998,999,1252
und die folgenden CapCharacterSet: Kanji
Codepage 1252 ist die Standard-Windows-Codepage. 936 ist die Codepage für vereinfachtes Chinesisch. In diesem Fall verwende ich die Codepage 936, konnte jedoch nie chinesische Zeichen auf dem Drucker anzeigen.
Beispiel:
string str = "重新开始";
// open device as variable _ReceiptPrinter, claim it, mark it as enabled
_ReceiptPrinter.CharacterSet = 936;
_ReceiptPrinter.PrintNormal(PrinterStation.Receipt, str);
Dieser druckt den Text mit allen chinesischen Schriftzeichen aus ersetzt mit?.
Ich bin mir nicht sicher, ob ich vor dem Drucken zusätzliche Escape-Codes angeben muss (ESC R 15?) Oder ob mein Drucker in Epson OPOS (v2.50e) falsch konfiguriert ist. Ich habe einige Dinge ausprobiert, aber nichts hat funktioniert. Irgendwelche Ideen oder Codebeispiele?
Hinweis: Im Selbsttest druckt der Drucker chinesische Zeichen.
Was ist 'charset' in Ihrem Beispiel? Auch, Kanji! = Vereinfachtes Chinesisch. –
charset == 936 (Codepage für vereinfachtes Chinesisch); Kanji ist der CapCharSet-Enumerationswert. Ich habe auf Unicode gehofft, aber angenommen, dass Epson es als Kanji aus Mangel an einer besseren Wahl definiert (und ich glaube nicht, dass dieser Drucker alle Unicode unterstützt, nur die spezifische Teilmenge für vereinfachtes Chinesisch) \t public enum CharacterSetCapability \t { \t \t Numeric = 0, \t \t Alpha = 1, \t \t Kana = 10, \t \t Kanji = 11, \t \t Unicode = 997, \t \t Ascii = 998, \t \t Windows = 999, \t \t Ansi = 999, \t} –