Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Вниз

Помогите с печатью, минуя механизм Windows   Найти похожие ветки 

 
Kitty-Kat ©   (2004-09-21 20:55) [0]

Для скорости необходимо печатать шрифтами принтера (матричный).
Использую стандартное
AssignFile(F,"LPT1");
Rewrite(F);
WriteLn(F,"Пробная печать");
Close(F);
но возникает проблена - вместо русского текста выводятся иероглифы. Пожалуйста, помогите - работа дальше не идет!


 
DiamondShark ©   (2004-09-21 21:54) [1]

Перед выводом преобразовывать текст в OEM-кодировку.


 
Defunct ©   (2004-09-21 21:55) [2]

Вывод - принтер не поддерживает русский шрифт, обратитесь в сервисную контору по обслуживанию принтеров, пуст руссифицируют ваш принтер.


 
Gr++N   (2004-09-21 21:55) [3]

Перед выводом нужно преобразовать "Пробная печать" в СP866 (DOS);


 
Defunct ©   (2004-09-21 22:02) [4]

Кодировка вообше-то не CP866, принтеру глубоко "плевать" на кодовую страницу, все зависит от прошитой таблицы шрифтов (которая находится в ПЗУ принтера). Шрифты у принтеров в кодировке - ASCII.


 
Evg12   (2004-09-21 22:21) [5]

Бывают принтера у которых русский шрифт сидит в пользовательской ПЗУ. Переключается какойто эскейп последовательностью или кнопками на принтере. В общем что-то такое я еще с незопаметных времен припоминаю.....


 
Evg12   (2004-09-21 22:22) [6]

Да... Принтер какой? Модель?


 
Petr V. Abramov ©   (2004-09-21 23:00) [7]

А у другого (тоже матричного) принтера будет другая эскейп последовательность
 И придется делать базу данных маотричных принтеров эскейп последовательностями типа базы данных драйверов, которая в Windows.
 Или производители принтеров должны так зауважать Вашу разработку, что эти самые "типа драйверы" поставлять вместе с принтерами.


 
Kitty-Kat ©   (2004-10-01 19:44) [8]

Все получилось с использованием функции CharToOem.
Спасибо всем за помощь


 
Анатолий   (2004-10-01 20:16) [9]


>Kitty-Kat
>Все получилось с использованием функции CharToOem


Да, только имейте ввиду, что в В2000 у вас такое не пройдет.

В В2000 LPT1 - это просто именованный канал спулера печати. Там обойти стандартный механизм сложнее. Т.е. печатать будет, но через спулер виндовс.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.04 c
9-1087355012
JUS
2004-06-16 07:03
2004.11.07
Как подключить DirectDraw к программе, объясняю...


14-1097911237
Seldon
2004-10-16 11:20
2004.11.07
Патентование программ


14-1098089058
Undert
2004-10-18 12:44
2004.11.07
Проблема с MYSQL


4-1096437698
Gosha
2004-09-29 10:01
2004.11.07
Счетчик файлов


4-1096522951
Muhsin
2004-09-30 09:42
2004.11.07
Как используется ShellExecute





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский