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

Таким образом, теперь мы можем выводить на экран русскоязычные сообщения с помощью шрифтов 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.

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