русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Работа с текстами в графическом режиме.


Дата добавления: 2015-06-12; просмотров: 515; Нарушение авторских прав


 

Чтобы иметь возможность вывода текстовой информации, система программирования должна поддерживать работу не менее чем с одним шрифтом. Шрифт представляет собой набор символов, используемых для отображения текстовой информации. С точки зрения "потребителя", шрифты различаются начертанием символов. Программисту важен еще и способ хранения информации о форме символов. При работе с графикой Турбо Паскаля используются два вида шрифтов, различающихся своим внутренним форматом – растровые (он один) и векторные (их несколько).

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

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

Векторные шрифты существуют в виде отдельных файлов, имеющих расширение .chr и расположенных в том же каталоге BGI Турбо Паскаля, что и графические драйверы. Чтобы программы выполнялись правильно, им должны быть доступны файлы со всеми необходимыми шрифтами. Если графическая программа не сможет найти необходимый шрифт, то это приведет к сбою в работе в ее работе, будет просто использоваться шрифт, заданный по умолчанию. "Стандартные" (т.е. входящие в исходную поставку Турбо Паскаля) векторные шрифты не содержат русских букв. Впрочем, существуют векторные шрифты, созданные программистами и поддерживающие работу с русским алфавитом. Их можно приобрести и установить в Турбо Паскаль.



Для работы с текстами в Турбо Паскале имеются несколько процедур.

 

Процедура SetTextStyle

Функция: Устанавливает текущий тип текстового шрифта, его направление, размер.

Описание: SetTextStyle(шрифт, направление,

размер символа).

Шрифт принимает одно из следующих значений:

 

DefaultFont=0 – растровый шрифт;

TriplexFont=1 – векторный шрифт;

SmallFont=2 – векторный шрифт;

SanSerifFont=3 – векторный шрифт;

GothicFont=4 – векторный шрифт.

 

Направление текста принимает одно из двух значений:

HorizDir=0 – слева направо;

Vertyr=1 – снизу вверх.

 

Размер символа принимает значение от 0 до 10. Значение 1 соответствует шрифту 8х8, а 10 соответствует 80х80.

 

Процедура SetTextJustify

Описание: SetTextJustify(horj, verj).

Примечания: устанавливает выравнивание в горизонтальном (horj) и вертикальном (verj) направлениях.

Типы выравнивания:

Горизонтальное:

LefText=0 – влево;

CenterText=1 – по центру;

RightText=2 – вправо.

 

Вертикальное:

BottomText=0 – вниз;

CenterText=1 – по центру;

TopText=2 – вверх.

 

Процедура GetTextSettings

Функция: Возвращает текущий тип текстового шрифта, его направление, размер и выравнивание, установленные с помощью процедур SetTextStyle и SetTextJustify.

Описание:

SetTextSettings( var TextInfo: TextSettingsType).

 

Процедура OutText

Функция: Пересылает строку на устройство вывода в то место, в котором находится текущий указатель.

Описание: OutText(строка:string).

Примечания: Параметр "строка" выводится в месте расположения текущего указателя. При этом используются текущие параметры выравнивания. Если строка слишком длинная и не умещается на экране или в текущей области просмотра, то она усекается. Если активен шрифт, используемый по умолчанию (растровый шрифт), а строка слишком велика и не умещается на экране, то она не выводится.

В данной процедуре используется шрифт, установленный процедурой SetTextStyle. Процедура OutText использует параметры вывода, установленные процедурой SetTextJustify (выравнивание, центрирование и др.). Текущий указатель изменяется процедурой OutText только в том случае, если направление вывода текста горизонтальное и задано выравнивание по левой границе. Направление вывода текста (горизонтальное или вертикальное) задается с помощью процедуры SetTextStyle, а выравнивание – с помощью процедуры SetTextJustify.

 

Процедура OutTextXY

Функция: Пересылает строку на устройство вывода.

Описание: OutTextXY(X, Y, текст_строка).

Примечания: Строка, заданная параметром "текст_строка", выводится в точке (x, y). Если строка слишком длинная и выходит за пределы экрана или текущей области просмотра, то она усекается.

Процедура OutText используется для вывода текста в месте расположения текущего указателя, а процедура OutTextXY используется для вывода текста в любом заданном месте экрана.

 

Пример программы:

Program Examp_18;

 



<== предыдущая лекция | следующая лекция ==>
Относительных координатах. | Графические окна.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.979 сек.