Abs, Sqr в Pascal.

Abs - функция языка Паскаль, которая вычисляет модуль числа.
Sqr - функция языка Паcкаль, которая возводит число в квадрат.

Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Функции trunc, round в Pascal.

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

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

Оператор варианта CASE.

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

Массивы. Регулярные типы.

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

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

Для того чтобы можно было выводить русские буквы необходимо установить русские шрифты. Для этого скачиваем архив с русскими шрифтами (в архиве их будет 8 штук). Затем распаковываем архив в папку с вашей программой C:\FPC\2.2.2\bin\i386-win32. Соглашаемся на замену файлов. Таким образом, из 10 файлов, которые мы загрузили в папку C:\FPC\2.2.2\bin\i386-win32 в прошлом уроке, 8 файлов мы заменили. В таблице ниже показано, какие шрифты поменялись на русские.

russkie shrifty v graficheskom rezhime pascal..

Таким образом, теперь мы можем выводить на экран русскоязычные сообщения с помощью шрифтов 1,2,3,4,6,8 и 9. Для наглядности напишем программу, которая выводит предложение «Язык программирования Паскаль».

Русские шрифты в Паскаль.


Program Graphika19;
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(11);
settextstyle (1,0,6);
outtext ('Язык ');
settextstyle (2,0,6);
outtext ('программирования ');
settextstyle (3,0,6);
outtext ('Паскаль ');
readln;
closegraph;
end.
 

В строке №20 указываем цвет для выводимых слов.

В строке №21 - №26 выводим на экран русские слова с помощью шрифтов №1, №2 и №3.

russkie shrifty v graficheskom rezhime pascal

russkie shrifty v graficheskom rezhime pascal.Дополнение к материалу.

Мы поместили шрифты в папку bin\i386-win32. Однако при таком раскладе они будут работать только в среде Free Pascal (т.е. если мы запустим программы из компилятора Free Pascal). Однако, если мы запустим программу с помощью скомпилированного файла graphika19.exe (например, при переносе программы на другой компьютер), то шрифты работать не будут. В этом случае следует поместить все шрифты в папку с самой программой.


Предыдущая статья : Процедура SetTextStyle.

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

Следующая статья : Процедура SetTextJustify.


Комментарии  

 
+3 # Bamsik 10.02.2012 22:11
Ура все работает.
Это просто чудо, особенно после того как пробуешь реализовать советы разных умников. А после этой статьи понятно становится что народ не в курсе этой проблемы.
Автор тебе большое спасибо. Я уже хотел все нафиг выкинуть как нашел эту статью.
ураааааааааааааааааааааааааааааааа!
Ответить
 
 
0 # Bamsik 12.02.2012 14:51
И еще сначала испытал небольшие трудности, но потом понял. Если вы создали exe файл то и шрифты нужно держать рядом с ним.
Ответить
 
 
0 # Alexei 01.07.2012 05:39
Поместил шрифты в папку bin\i386-win32 и в папку программы. Кракозябрики не исчезают, код - из примера на этой странице.
Ответить
 
 
+2 # Progr 28.02.2014 10:25
При копировании с сайта получаются крокозябры в коде Паскаля. Нужно в тексте программы правильно ввести и все будет работать. :-)
Ответить
 

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

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

   ГлавнаяПаскальГрафика в ПаскальПроцедуры Ellipse и FillEllipse.