Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_МЕТ№2.DOC
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
247.81 Кб
Скачать

2. Вывод текста (надписей) в графическом режиме

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

Для вывода текста в графическом режиме используются процедуры:

1) Settextstyle (шрифт:Word;направление:Word;размер:1..10);

Процедура задает шрифт и размер букв.

ШРИФТ задается английским словом или числом

0 - обычный, буквы 8х8 точек

1 - красивый

2 - мелкий

3 - прямой

4 - готический

НАПРАВЛЕНИЕ:

0 - слева направо,

1 - снизу вверх.

РАЗМЕР:

1 - нормальный ( 8х8 точек ),

2 - в 2 раза больше и т.д. - до 10.

Пример.

Settextstyle (1,0,1);

2) OutТext(строка); Процедура осуществляет вывод строки заданного шрифта от текущего положения курсора.

3) OuttextXY(X,Y,строка); Процедура осуществляет вывод строки от точки с координатами (X,Y).

Пример.

Settexttyle (1,0,1);

OutTextXY(GetmaxX Div 2, GetmaxY div 2, `Graphic`);

В результате выполнения этих процедур будет выведено слово Graphic в середине экрана.

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

Str(число,строка);

а затем воспользоваться процедурой вывода текста.

Например, следующий фрагмент программы обеспечивает вывод на экран, начиная от точки с координатами (80,50), значения Xmax.

Xmax:=GetmaxX;

Str(Xmax,StrX);

OutTextXY(80,50,'Xmax='+StrX);

Текущие параметры для текста можно запросить с помощью процедуры GetTextSettings.

3. Вывод точек на экран

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

1) Установка цвета фона:

SetBkColor(цвет:word); { Цвет из палитры }

2) Цвет рисунка устанавливается процедурой

SetColor (цвет:Word);

Цвет – номер цвета ( или английское наименование ) из палитры (от 1 до 15).

3) Очистка экрана перед выводом изображения осуществляется с помощью процедуры

Cleardevice;

Пара процедур:

SetBkColor(цвет);

Cleardevice;

окрасит весь экран заданным цветом.

4) Количество цветов в палитре позволяет определить функция

GetMaxColor

или константа MaxColors.

5) Вывод на экран отдельных точек обеспечивает процедура

PutPixel(x,y,цвет);

Здесь (x,y) – координаты точки, а цвет – ее цвет (из палитры).

Пример.

Составить программу "Звездное небо", которая выводит на экран разноцветные точки в случайных местах. В программе для задания координат и цвета будем использовать генератор случайных чисел Randomize. Диапазон случайных чисел определяется функциями GetMaxX, GetMaxY и GetMaxColor соответственно. Программа будет иметь вид:

Program Plot_Stars;

uses

Crt, Graph;

var

Er,GDr, GMode: Integer;

X, Y: Integer;

Color:Integer;

begin

Gdr := Vga;

GMode:= VgaLo;

InitGraph(Gdr,GMode,'');

Er:=GraphResult;

If Er=GrOk then

Begin

Randomize;

ClearDevice;

Repeat

Color:=Random(GetMaxColor);

x:=Random(GetMaxX);

y:=Random(GetMaxY);

PutPixel(x,y, Color);

Delay(10);

Until Keypressed;

CloseGraph;

End

Else

Writeln('Ошибка графики ',Er);

Readln;

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]