Делал себе, но он оказался ненужным
<?php
function unicode($str)
{
$cyrillic = array('А','Б','В','Г','Д','Е','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я','Ё','ё');
$unicode = array('А','Б','В','Г','Д','Е','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я','Ё','ё');
return str_replace($unicode, $cyrillic, $str);
}
//путь к шрифту с поддержкой кирилицы
$font="../../incfiles/fonts/AlgeriusCaps.ttf";
$priclad = htmlspecialchars(unicode($_GET['img']));
Header("Content-type: image/png");
//фоновая имага
$img = imageCreateFromPNG('img/fon3.png');
$color = imagecolorclosestalpha($img,255,255,255,27);
imagettftext($img, 12, 0, 5, 18, $color, $font, $priclad);
//белый цвет делаем прозрачным
imagecolortransparent($img, 0x7FFFFFFF);
ImagePNG($img);
ImageDestroy($img);
?>