PHP Imagick – la function setTextEncoding () non funziona

Sto cercando di aggiungere del text su un object Imagick.

Tuttavia io uso la function setTextEncoding (), non funziona ancora.

....... $draw = new ImagickDraw(); $draw->setTextEncoding('utf-8'); $draw->setFont($fpath.'/process/ARIAL.TTF'); $draw->setFontSize(80); $draw->setFillColor("#ffffff"); /*** annotate the text on the image ***/ $imageOrg->annotateImage($draw, 60, 100, 0, "onur küçükkeçe"); ........ 

e come risultato ottengo,

 onur küçükkeçe 

Qualche idea sul perché non funziona?

Grazie in anticipo.

AGGIORNARE

se imposto una variabile $ text su qualcosa di simile a chr (252), ottengo un risultato corretto

 $text=chr(252); $imageOrg->annotateImage($draw, 60, 100, 0, $text); 

di conseguenza ottengo

 ü 

AGGIORNAMENTO II

Finalmente ho trovato che cosa causa questo.

Il problema si verifica perché il set di caratteri del documento non è definito, ma se si imposta un set di caratteri per lo script, imagick non funziona perché il tipo di documento deve essere impostato su image / png.

Ma non so come posso aggiustarlo.

Ok. Ho trovato la soluzione.

la function php utf8_decode () risolve il problema

 ....... $draw = new ImagickDraw(); $draw->setTextEncoding('utf-8'); $draw->setFont($fpath.'/process/ARIAL.TTF'); $draw->setFontSize(80); $draw->setFillColor("#ffffff"); /*** annotate the text on the image ***/ $imageOrg->annotateImage($draw, 60, 100, 0, utf8_decode("onur küçükkeçe")); ........