Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с кодировкой текста, русский как абракадабра 
:(
    Опции темы
ДобренькийПапаша
Дата 8.6.2011, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: нет
Всего: 7



Есть принтер. У него есть параметр CharacterSet, который может принимать только значение 999, что означает следующее:
 The Windows ANSI character set. The value of this constant is 999. This is exactly the same as the Windows code page 1252.

Когда я отсылаю на принтер команду  _printer.PrintNormal(CurrentStation, text); где text это string равный тексту из текстобкса, причём текст английский - то всё печатается нормально, а если русский - то абракадабра.

Мне сказали, что прошивка стоит такая, что русские символы принтер печатает. Проверено.

Что делать с русским текстом? Во что его кодировать? Тут надод поработать Encoding'ом. Но пока мне не ясно, что нужно сделать.
 


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
jonie
Дата 8.6.2011, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 22
Всего: 118



сдалась вам печать в терминальном режиме... Печатайте растром


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
ДобренькийПапаша
Дата 8.6.2011, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: нет
Всего: 7



Ээээ, чего?)))
Я в этом нифига не понимаю. У меня термопринтер с бумагой на 60мм. Работаю с ним через POS for .NET, который кушает OPOS драйвер для этого принтера.


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
ДобренькийПапаша
Дата 9.6.2011, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: нет
Всего: 7



Вообще, это должно было помочь.
Код

string str = " Меня зовут Абракадабра, привет Мир! Ленин жив!";
                Encoding win1252 = Encoding.GetEncoding("windows-1252");
                byte[] srcBytes = win1252.GetBytes(str);
                byte[] dstBytes = Encoding.Convert(Encoding.Default, win1252, srcBytes);
                string convertedStr = win1252.GetString(dstBytes);
               
                 _printer.PrintNormal(CurrentStation, convertedStr);


Но, один чёрт, выводит знаки вопросов.


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
ДобренькийПапаша
Дата 9.6.2011, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: нет
Всего: 7



Цитата(jonie @  8.6.2011,  12:00 Найти цитируемый пост)
Печатайте растром 


Вы имели ввиду битмап? Это под каждую букву нужен рисунок или можно подавать что-то типа байтового массива полученного из метода типа Text.Draw() из GDI?


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0839 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.