Ввод логических переменных с клавиатуры.

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

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

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

Textcolor, Window, Textbackground в Pascal.

Текст, который мы выводим на экран с помощью процедуры Writeln или с помощью оператора Write можно изменять. Процедура Textcolor используется для изменения цвета выводимого текста. Процедура Textbackground изменяет цвет фона, на котором выводится ...

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

Циклы с параметром. Оператор FOR.

Эти циклы организуются в программах, где заранее известно число повторений. При этом повторное выполнение сопровождается изменением управляющего параметра (переменной цикла).

Сортировка двумерного массива.

Пример 36. Задан двумерный массив X из 6 строк и 4 столбцов. Упорядочить массив X по возрастанию элементов дробной части столбца с номером N. Отсортированный массив X вывести на экран монитора.

В предыдущих примерах мы выводили текст английскими буквами. При попытке вывести текст русскими буквами в графическом режиме у нас возникнут определенные проблемы. Вместо текста на экране мы увидим непонятные кракозябры. Дело в том, что графический режим Паскаля не поддерживает кириллицу. В некоторых случаях русскоязычные сообщения выводятся шрифтом 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
Ура все работает.
Это просто чудо, особенно после того как пробуешь реализовать советы разных умников. А после этой статьи понятно становится что народ не в курсе этой проблемы.
Автор тебе большое спасибо. Я уже хотел все нафиг выкинуть как нашел эту статью.
ураааааааааааааааааааааааааааааааа!
 
 
+1 # Bamsik 12.02.2012 14:51
И еще сначала испытал небольшие трудности, но потом понял. Если вы создали exe файл то и шрифты нужно держать рядом с ним.
 
 
+1 # Alexei 01.07.2012 05:39
Поместил шрифты в папку bin\i386-win32 и в папку программы. Кракозябрики не исчезают, код - из примера на этой странице.
 
 
+2 # Progr 28.02.2014 10:25
При копировании с сайта получаются крокозябры в коде Паскаля. Нужно в тексте программы правильно ввести и все будет работать. :-)
 
   ГлавнаяПаскальГрафика в ПаскальПроцедуры Circle и Arc.