Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Графика > Русский текст в jpgraph.


Автор: Specialist 12.5.2008, 00:35
Привет!
У меня проблемы с отображением русских символов в jpgraph.
Погуглив я нашел много сайтов с одной и той же статейкой, про русские символы.
Выполнил все по инструкции.
Шрифт VERDANA положил в папку шрифтов, которую я создал, указал шрифт.
Сразу заметил, что сам шрифт изменился на графике - значит все правильно сделал, но русские символы всеравно крякозябликами отображает.
Код
<?php
DEFINE("TTF_DIR", "fonts/"); 
DEFINE("LANGUAGE_CYRILLIC",true);
DEFINE("CYRILLIC_FROM_WINDOWS",true);
...
$graph->xaxis->title->SetFont(FF_VERDANA);
$graph->xaxis->title->Set("<обгрызено> :)" ); //Подпись
...
?>


И еще. Почему у меня не получается другой шрифт указать ? 
Пишу 
Код
$graph->xaxis->title->SetFont(FF_HELIOL);

Перед этим конечно положил в папку fonts/ шрифт heliol.ttf
Пишет 
Код
"Unknown font family specification"

Автор: Fortop 12.5.2008, 00:53
Specialist, вариантов может быть несколько
1. несовпадение имен файла (например, разный регистр)
2. нужно указывать имя семейства, которые он понимает,
а HELIOL в их список видимо не входит.
Попробуй ARIAL, VERDANA, COURIER, TIMES, SERIF


Автор: Specialist 12.5.2008, 01:27
Цитата

Попробуй ARIAL, VERDANA, COURIER, TIMES, SERIF

С русским текстом я разобрался. Нужно было текст писать в кодировке UTF-8.
Цитата

нужно указывать имя семейства, которые он понимает,
а HELIOL в их список видимо не входит.

Зачем мне нужны какие-то семейства ? 
Я положил в указанную папку шрифт и как его мне теперь использовать. Подскажите пожалуйста.

Автор: Fortop 12.5.2008, 04:47
Цитата(Specialist @  12.5.2008,  01:27 Найти цитируемый пост)
Зачем мне нужны какие-то семейства ? 
Я положил в указанную папку шрифт и как его мне теперь использовать. Подскажите пожалуйста. 

Семейства не нужны?
Тогда единственный совет - Выкинуть и папку, в которую ложили, и шрифт, который ложили. И забыть о том что Вы хотели.


Если же все таки решим, что семейства нужны, то идем на страницу мануала и читаем, читаем, и еще раз читаем....

http://www.aditus.nu/jpgraph/phptip04.php

Цитата
In order to make additional fonts available in the library the up to four steps may have to be taken 
Decide what font family name should be used for each of the new fonts added and then create new symbolic defines for these families. In order to follow the naming convention these defines should have a prefix of "FF_" (for Font Family) and be given a numeric value >= 100. These defines are made in the top of the file jpgraph_ttf.inc.php where there is a section of font family defines. 
Update the existing define "_FF_LAST" with the highest index used for any font family. 
Add a new mapping between symbolic font family name (and style) with the actual font file name by updating the mapping array TTF::font_files in the TF class. The mapping should be made for each of the font families and corresponding styles. If a style is not available for a specific family the font file should be specified as an empty string. 
If the font files is not already available in the defined font directory copy the necessary font files. 
After those changes have been made the new font family will be available for usage. In the next section we give a short example on the detailed steps on how to add a new font family.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)