Программирование >>  Перегруженные имена функций и идентификаторы 

1 ... 68 69 70 [ 71 ] 72 73 74 ... 210


В матричном битовом шрифте каждый символ определяется как матрица элементов изображения.

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

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

В графике текст выводится функциями outtext или outtextxy, а управление его выравниванием (относительно текущей позиции) выполняет функция settextjustify. При помощи функции settextstyle вы должны выбрать символьный шрифт, направление его размещения (горизонтальное или вертикальное) и размер (масштаб). Узнать текущие установки вывода текстов можно при помощи функции gettextsettings, которая возвращает текущий текстовый шрифт, выравнивание, увеличение и направление в структуре textsettings. Функция setusercharsize позволяет модифицировать ширину и высоту векторных шрифтов.

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

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



По умолчанию битовый матричный шрифт 8х8 встроен в графический пакет и поэтому всегда доступен во время выполнения. Векторные шрифты все хранятся в отдельных файлах .CHR. Они могут загружаться во время выполнения или преобразовываться в файлы .ObJ (при помощи утилиты BGIOBJ) и затем компоноваться с вашим файлом .EXE.

Обычно подпрограмма settextstyle загружает файл шрифта, распределяя память для него и затем загружая с диска соответствующий .CHR-файл. В качестве альтернативы данной схеме динамической загрузки вы можете скомпоновать файл шрифта (или несколько таких файлов) непосредственно с выполняемым файлом программы. Для этого сначала требуется преобразовать фай .CHR в файл .OBJ (с помощью утилиты BGIOBJ, а затем поместить в исходную программу вызовы registerbgifont (перед вызовом функции settextstyle) для того, чтобы зарегистрировать данный символьный шрифт(ы). При построении программы для всех зарегистрированных вами векторных шрифтов необходимо скомпоновать полученные файы .OBJ.

Использование функции registerbgifont относится к сложным методам программирования и не рекомендуется начинающим программистам.

Управление цветом

Ниже приводится краткое описание функций для управления цветом изображений:

Функции получения информации о цвете

getbcolor

Возвращает текущий цвет фона.

getcolor

Возвращает текущий цвет вычерчивания.

getdefaultpalette

Возвращает структуру определения палитры.

getmaxcolor

Возвращает максимальное значение цвета доступное в текущем графическом режиме.



getpalette

Возвращает текущую палитру и ее размер. getpalettesize

Возвращает размер просмотровой таблицы палитры. Функции установки одного или более цветов

setallpalette

Изменяет все цвета палитры, как задано.

setbkcolor

Устанавливает текущий цвет фона

setcolor

Устанавливает текущий цвет вычерчивания.

setpalette

Изменяет один из цветов палитры, как указано ее аргументами.

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

Элементы изображения и палитры

Графический экран представляет собой массив элементов изображения. Каждый элемент изображения соответствует одной (цветной) точке на экране. Значение элемента изображения не задает точный цвет этой точки напрямую; на самом деле это некоторый индекс таблицы цветов, называемой палитрой. Каждый элемент палитры, соответствующий данному значению элемента изображения, содержит точную информацию о цвете, которым будет отображен этот элемент изображения.

Такая схема косвенных обращений имеет множество следствий. Хотя аппаратное обеспечение может позволять отображение множества цветов, одновременно на экране может находиться только некоторое их подмножество. Количество одновременно находящихся на экране цветов равно числу элементов палитры (размеру палитры). Например, EGA позволяет наличие 64 цветов, но лишь 16 из них может находиться на экране сразу; таким образом, размер палитры EGA равен 16.



1 ... 68 69 70 [ 71 ] 72 73 74 ... 210

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика