Аппаратное обеспечение IBM PC



         

Печать русских букв - часть 3


// Выдаем строку символов, используем начертание, // заданное в ПЗУ принтера.

'@', '@', '@', '@', '@', 0x0a,

// Используем новое начертание:

0x1b, '%', 1, '@', '@', '@', '@', '@', 0x0a,

// Возвращаемся опять к старому начертанию:

0x1b, '%', 0, '@', '@', '@', '@', '@', 0x0a,

7,7,7, // Выдаем 3 раза звуковой сигнал.

'$' // Признак конца массива данных

};

char *p;

// Выводим строку символов на принтер

for(p = buffer; *p != '$'; p++) bdos(0x05, *p, 0); }

Рассмотрим теперь метод переопределения начертания символов в 24-иголочном принтере Epson LQ-2550. Для определения начертания символов в этом принтере используется сетка высотой 24 точки - соответственно, по одной точке для каждой иголки в печатающей головке.

24-иголочный принтер использует несколько наборов символов:

  • черновой набор символов (Draft);
  • качественный набор символов (Letter Quality);
  • пропорциональный набор символов (Proportional).
  • В зависимости от используемого набора символов ширина сетки может быть либо 9 точек (для чернового набора символов, либо 29 точек (для качественного набора символов), либо 37 точек (для пропорционального набора символов). Кроме того, для последних двух наборов столбцы сетки расположены ближе друг к другу, чем для чернового набора.

    На рисунке показаны сетки для чернового и качественного/пропорционального наборов символов принтера Epson LQ-2550:

    Обычные символы располагаются между жирными линиями. Нижние линии сетки используются для подчеркивания и изображения "хвостиков" таких букв, как "у", "ц" и т.п.

    Так же, как и для 9-игольчатых принтеров, существует ограничение на расположение точек в узлах сетки: справа и слева от каждой точки должны располагаться пустые позиции.

    Приведем формат команды для переопределения символов в принтере Epson LQ-2550:

    ESC "&" "0" n1 n2 d0 d1 d2 data Определить символы

    Параметры n1 и n2 задают диапазон кодов ASCII символов, начертание которых необходимо переопределить. Их назначение такое же, как и для 9-игольчатых принтеров Epson. Если вы переопределяете только один символ, эти два параметра должны быть одинаковыми.




    Содержание  Назад  Вперед