У меня возникают проблемы с отображением символов Unicode (язык: малаялам, тамильский и хинди) с помощью библиотеки PHP GD. Связано ли это с движком рендеринга библиотеки GD? Доступны ли какие-либо обходные пути?
Сначала убедитесь, что ваши шрифты содержат нужные глифы (системные шрифты, такие как Arial). Затем убедитесь, что вы конвертируете свои параметры в unicode, используя utf8_decode()
если это необходимо.
Я нашел одну попытку
<?php //error_reporting(0); $text = ("Unreadable text"); $font = "mangal.ttf"; $fontSize = "10"; $width = '600'; $s = new CairoImageSurface(CairoFormat::ARGB32, $width, 21); $c = new CairoContext($s); /* Set the background*/ $c->setSourceRGB(.1,149,.58); $c->paint(); $c->setSourceRGB(.1,.1,.1); /* Make a Pango layout, set the font, then set the layout size */ $l = new PangoLayout($c); $desc = new PangoFontDescription("mangal normal $fontSize"); $l->setFontDescription($desc); /* Here, we use Pango markup to make part of the text bold */ $l->setText($text); /* Draw the layout on the surface */ $l->showLayout($c); $s->writeToPng("unicode.png"); echo $img = "<img src=\"unicode.png\">"; ?>
http://fatalweb.com/articles/how+to+render+hindi+unicode+font+using+php-29.htm