https://lehome.ru/katalog/konsoli/?f_product_material_stone=on

ESC "x" n Выбор качества печати:



ESC "x" n Выбор качества печати:

0 - низкое качество; 1 - качественный шрифт NLQ.

Для задания типа шрифта надо вывести на принтер три байта: символ ESC (1Bh), символ "x" (78h), затем код шрифта (30h...31h).

Существуют различные команды, позволяющие определить размер межстрочного интервала, расположение левой и правой границ листа, используемый для печати шрифт. Можно выполнять печать графических изображений, о чем мы раскажем немного позже.

Если вас не устраивает шрифт, который записан в ПЗУ принтера (например, в нем нет русских букв), вы можете использовать команды для загрузки собственного шрифта.

Приведем пример программы, которая посылает в принтер командные последовательности и обычные символы, пользуясь функцией 05h прерывания INT21h: #include <dos.h> #include <stdio.h> main() { char buffer[] = { 0x1b, '@', // Сбрасываем принтер в исходное // состояние. 7,7,7, // Выдаем 3 раза звуковой сигнал. 0x1b, 'x','0', // Устанавливаем низкое // качество печати. 'S','t','r','i','n','g',' ','1', // Печатаем // строку. 0x1b, 'x','1', // Устанавливаем высокое // качество печати. 'S','t','r','i','n','g',' ','2', // Печатаем // строку.


0x0a, // Переводим строку. 7,7,7, // Выдаем 3 раза звуковой сигнал. 0 }; char *p; // Выводим строку символов на принтер for(p = buffer; *p != 0; p++) bdos(0x05, *p, 0); }

Для вывода символа на принтер через функцию MS-DOS здесь использована функция bdos(), входящая в состав стандартных библиотек трансляторов Microsoft QC 2.5 и C 6.0. Первый параметр функции bdos() - номер выполняемой функции прерывания MS-DOS INT 21h, второй - содержимое регистра DX перед вызовом этой функции, и третий - содержимое регистра AL.

В комментариях к программе объясняется назначение управляющих последовательностей, посылаемых на принтер. Перед запуском программы необходимо убедиться в том, что принтер включен и находится в состоянии ON LINE, иначе программа перейдет в состояние ожидания.



Содержание раздела