Процедура Writeln в Pascal

Помимо зарезервированного слова Write, для вывода сообщения на экран в Pascal используется процедура Writeln. Отличие процедуры Writeln от оператора Write заключается в том, что Writeln после вывода сообщения на экран переводит курсор на другую ...

Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

Использование Var, Integer, Readln.

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

Циклы и массивы

Тип данных Real.

Тип REAL (вещественный). Число типа REAL занимает три слова (шесть байтов). При работе с вещественными числами нужно помнить, что на любом отрезке вещественной оси существует бесчисленное множество ...

Примеры линейных программ.

В данной статье приводится несколько примеров линейных программ на языке программирования Паскаль.

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

 Процедура SetTextStyle в Паскаль.





Program Graphika18;
Uses Crt, Graph;
var i:integer;
Procedure Graphinterface;
Var  gd, gm, error:Integer;
s:String;
Begin
gd:=detect;
s:='';
Initgraph(gd,gm,s);
error:=GraphResult;
if error<>GrOk then
begin
writeln(GraphErrorMsg(Error));
Halt(error)
end
end;
begin
Graphinterface;
setcolor(3);
for i:=0 to  10 do
begin
settextstyle (i,0,4);
outtext ('pascal ');
delay(1000);
end;
readln;
closegraph
end.



Строка №3. В программе мы будем использовать цикл, поэтому необходимо задать переменную, которая будет использоваться в качестве счетчика для цикла.

Строка №20. Устанавливаем цвет для выводимого текста.

В строке №21 записываем цикл, и затем записываем 3 оператора, которые будут выполняться в цикле (строка №23, №24, №25). Напомню, что если в цикле необходимо выполнить больше одного оператора, то их необходимо заключить в операторные скобки begin…end (строка №22 и №26).

В строке №23 записываем первый оператор. Это процедура SetTextStyle. Эта процедура определяет шрифт выводимого текста, направление выводимого текста, а также величину букв. Первый параметр этой процедуры определяет шрифт выводимого текста (в нашем примере первый параметр будет принимать значение переменной «i» и благодаря циклу изменяться от 0 до 10).
Второй параметр описывает направление вывода текста. Этот параметр может принимать только 2 значения – 0 или 1. Если стоит 0 (как в нашем примере), то текст будет выводиться слева направо. Если стоит 1, то текст будет выводиться сверху вниз.
Третий параметр определяет величину символов. Он может принимать значения от 1 до 10 (1 – самый маленький размер, 10 – самый большой размер). Ниже представлена таблица шрифтов и соответствующих им констант.

shrifty v pascal.

Первый шрифт в этой таблице применяется по умолчанию в среде Free Pascal. Также следует сказать, что это единственный шрифт, которым вы можете пользоваться в стандартной сборке компилятора Free Pascal. Вне зависимости от того, какой шрифт вы укажите в процедуре SetTextStyle, текст будет выводиться только точечным шрифтом DefaultFont. Для того чтобы можно было выводить текст другими шрифтами, их необходимо загрузить в папку с программой. Для этого скачиваем архив со шрифтами, распаковываем его и засовываем в папку C:\FPC\2.2.2\bin\i386-win32\.

shrifty v pascal

Таким образом, в папке C:\FPC\2.2.2\bin\i386-win32\ у вас появится 10 файлов с расширением .CHR.
Теперь мы можем использовать 11 различных шрифтов (один – стандартный, и 10 – взятых из компилятора Turbo Pascal).

В строке №24 выводим на экран слово «pascal». Благодаря циклу это слово будет выведено на экран 11 раз. Причем все 11 слов будут выведены один за другим, т.к. процедура OutText выводит текст на экран и переносит указатель в конец этого текста.

Строка №25. Все 11 слов будут выводиться с задержкой в 1 секунду.

SetTextStyle.

SetTextStyle..


Дополнение к материалу.

Следует учитывать тот факт, что если вы запускаете программу из среды Free Pascal (Ctrl+F9), то шрифты должны находиться в папке bin\i386-win32. Если же вы сначало компилируете программу, а затем запускаете скомпилированный EXE-файл, то шрифты должны находиться в одной папке с программой (файлом EXE). Т.е. если вы переносите программу в другую дирректорию (или на другой компьютер), то и файлы шрифтов тоже необходимо перенести.

Шрифт DefaultFont (0) входит в модуль Graph и его можно использовать в любой момент. Этот шрифт является матричным, поэтому изменение размеров символов, выводимых этим шрифтом, сильно сказывается на качестве текста.

Шрифты с 1 по 10 являются векторными и при изменении размеров текста, его качество не изменяется.

Шрифты с 0 по 4 имеют константу, которую можно использовать в процедуре SetTextStyle вместо числовой константы. Например, строку SetTextStyle (3,0,4) можно записать так SetTextStyle (SansSerifFont,0,4). Шрифты с 5 по 10 не имеют констант, поэтому для их использования можно применять только числовую константу.

Шрифт DefaultFont (0) не имеет файла, т.к. он уже включен в модуль Graph. Шрифты с 1 по 10 имеют файлы, поэтому для использования этих шрифтов соответствующие им файлы должны находиться в папке C:\FPC\2.2.2\bin\i386-win32.


Предыдущая статья : Вывод текста на экран в графическом режиме.

Оглавление : Уроки Паскаль. Графика.

Следующая статья : Русские шрифты в графическом режиме.


Комментарии  

 
0 # ***!!!*** 27.12.2016 13:10
:-x
Ответить
 
 
0 # 12tgd 27.12.2016 13:11
:lol:
Ответить
 
 
0 # ee213d 27.12.2016 13:11
:oops:
LOL!!!
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальГрафика в ПаскальПроцедура MoveRel и OutText.