2013-10-09 3 views
0

У меня проблема. Когда я создаю образ с PHP, он не отображает символ utf 8.PHP image create with utf 8 символов

$imgPath = 'uplatnica1.jpg'; 
$image = imagecreatefromjpeg($imgPath); 
$color = imagecolorallocate($image, 000, 000, 000); 

$string = "šđčćž"; 
$x = 70; 
$y = 200; 

$fontSize = 3; 

imagestring($image, $fontSize, $x, $y, $string, $color); 
imagejpeg($image, 'qwe.jpg'); 
+0

Посмотрите на это: http://stackoverflow.com/questions/9458317/working-with-gd-imagettftext-and-utf-8-characters – becquerel

+0

Возможно, ваша проблема в том шрифте, который вы используете; В какой-то статье я обнаружил, что у вас должна быть как библиотека GD, так и библиотека FreeType, установленная на сервере. – Lan

ответ

0

Это всегда хорошо, чтобы read documentation prior asking

шрифта

Может быть 1, 2, , 4, 5 для встроенных шрифтов в LATIN2 кодировке (где более высокие номера, соответствующие более крупным шрифтам) или любой из ваших собственных шрифтов идентификаторов, зарегистрированных с помощью imageloadfont().

и UTF8 не подмножество

выбрана для Кодировки Latin2
0

Вы можете проверить imagettftext.

Ваш код будет:

$imgPath = 'uplatnica1.jpg'; 
$image = imagecreatefromjpeg($imgPath); 
$color = imagecolorallocate($image, 000, 000, 000); 

$string = "šđčćž"; 
$x = 70; 
$y = 200; 

$fontSize = 3; 
$fontFile = 'verdana.ttf'; // This file must reside on your system 

imagettftext($image, $fontSize, 0, $x, $y, $color, $fontFile, $string); 
imagejpeg($image, 'qwe.jpg'); 

Не забывайте, что ваш $fontFile должен существовать на сервере и доступны по коду.

+0

Внимание: imagettftext() [function.imagettftext]: Неверное имя файла шрифта в C: \ xampp \ htdocs \ prirucnici-akcija \ slika2.php в строке 13 – user2701076

+0

Вы разместили 'verdana.ttf' в том же каталоге, что и скрипт? – James

+0

Да. Я положил verdana на root в моем скрипте. – user2701076

Смежные вопросы