Главная страница
    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.031 c
4-1096543570
Leaner
2004-09-30 15:26
2004.11.07
Дерево процессов.


1-1098270070
Calm
2004-10-20 15:01
2004.11.07
TXMLDocuemnt, проблема с кирилицей


1-1098280705
ShproTT
2004-10-20 17:58
2004.11.07
Обращение к битам


1-1098778534
PURGEN
2004-10-26 12:15
2004.11.07
файл DAT


6-1093615570
RoLeX2004
2004-08-27 18:06
2004.11.07
Ошибка при отправке e-mail!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский