Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

Помогите с печатью, минуя механизм 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 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
1-1098041341
Jetus
2004-10-17 23:29
2004.11.07
Как сохранить иконку?


1-1098700448
Луарвик
2004-10-25 14:34
2004.11.07
Invalid pointer operation при закрытии. Почему???


4-1096445161
AlexXn
2004-09-29 12:06
2004.11.07
Удаление MUTEX


4-1096668653
НовичОк
2004-10-02 02:10
2004.11.07
Обращение к чужому приложению


14-1098185744
Ilya____
2004-10-19 15:35
2004.11.07
GetFileSize