-
Notifications
You must be signed in to change notification settings - Fork 103
Description
Test printer Birch CP-Q3, set to proper code page - 1251-Cyrilic(Windows) and printing on 80mm wide paper works flawlessly. Now wanted to adjust printing to 58mm rolls, so I put printer jumper in required position and fun started :)
In normal mode (prn.NormalWidth) everything is printed OK, but putting it in Condensed mode (PrinterModeState.On) has no use for Cyrilic - there are just empty space marks instead of expected characters. At the same time printing width fits perfectly.
So this code:
Printer prn = new Printer("CP-Q3", "Windows-1251");
prn.CondensedMode(ESC_POS_USB_NET.Enums.PrinterModeState.On);
prn.Append("=====ОВО ЈЕ ЋИРИЛИЦА=====");
prn.CondensedMode(ESC_POS_USB_NET.Enums.PrinterModeState.Off);
is resulting with: "===== =====" // Empty space in the middle is actually 15 characters wide - GitHub shortens it when message is saved
Than tried CondensedMode with string constructor, as well as Font method - both ways give question marks for each character wanted to print. Like:
prn.CondensedMode("=====ОВО ЈЕ ЋИРИЛИЦА=====");
and
prn.Font("=====ОВО ЈЕ ЋИРИЛИЦА=====", ESC_POS_USB_NET.Enums.Fonts.FontB);
both print: "=====???????????????=====");
Tested it for few hours and concluded that problem emerges with characters/code pages other than IBM Standard, like 1251-Cyrilic or 1250-Central Europian (characters like ŠšĐđŽžČčĆć), both lower or upper case.
Any idea how to overcome this issue?