HPGL

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

HPGL (иногда HP-GL) является основным языком управления принтерами, используемым плоттерами Hewlett-Packard. Его название представляет собой аббревиатуру Hewlett-Packard Graphics Language. В данный момент он является стандартным почти для всех плоттеров. Принтеры Hewlett-Packard, как правило, также поддерживают HPGL наравне с PCL.

Язык представляет собой сочетание кода из двух букв и следующих за ним дополнительных параметров. Например дуга (arc) может выводиться на печать следующей командой:

AA100,100,50;

AA — сокращение от Arc Absolute; 100,100 — координаты центральной точки дуги; 50 — начальный угол, измеряемый против часовой стрелки.

Четвертый параметр, неиспользуемый в данном случае, определяет угол рисования дуги и по умолчанию равен 5 градусам. Обычно HPGL файлы начинаются с нескольких команд, установливающих параметры, и продолжаются длинным списком графических команд. Например:

Пример HPGL файла
Команда Значение
IN; инициализация процесса черчения
IP; определяет начальную точку, в данном случае по умолчанию 0,0
SC0,100,0,100; устанавливает размеры страницы от 0 до 100 в направлениях X и Y
SP1; выбирает перо 1
PU0,0; перемещает перо в начальную позицию
PD100,0,100,100,0,100,0,0; опускает и двигает перо по заданным позициям (чертит прямоугольник вокруг страницы)
PU50,50; поднимает и перемещает перо в позицию 50,50
CI25; чертит окружность с радиусом 25
SS; выбирает стандартный шрифт
DT*,1; устанавливает в качестве текстового разделителя символ * и запрещает его печать на бумаге (1 — «true»)
PU20,80; поднимает и перемещает перо в позицию 20,80
LBHello World*; чертит надпись

Координатная система была основана на наименьших единицах, поддерживаемых их плоттерами — 25 µm (то есть 40 единиц на миллиметр, 1016 на дюйм).

Координаты задавались числами с плавающей запятой в пределах ±230.

HP-GL/2[править | править вики-текст]

Первоначальный язык HP-GL не поддерживал линии различной ширины. Этот параметр определялся перьями, устанавливаемыми в плоттер. С появлением первых струйных плоттеров ширина линий «перьев», указанных в HPGL-файлах, должна была устанавливаться на принтере для каждого пера, что представляло собой довольно трудоемкий процесс, сопровождающийся частыми ошибками. В HP-GL/2 данная возможность была предусмотрена непосредственно на уровне языка, что позволило автоматизировать данный этап. Среди прочих улучшений был добавлен бинарный формат. Это нововведение уменьшило размер файлов и время на их передачу. Также было улучшено минимальное разрешение.

Литература[править | править вики-текст]

  • Аммерал Л. Программирование графики на Турбо Си / Л. Аммерал; Перевод с англ. В. А. Львова. — М.: Сол Систем, 1992. — С. 96-105. — 219, [2] с. — (Серия "Машинная графика на языке Си"). — ISBN 5-85316-004-4.

Ссылки[править | править вики-текст]