Как конвертировать текст URFU UTF-8 в изображение на лету в Php?

اردو کے فونٹ کے مسائل

میرے ویب پیچ کے فونٹ ، براوزر کی وجہ سے بدل جاتے ہیں ، میں اپنے صفحے کو امیج
بنا کر براوزر کو دینا چایتا ہوں۔

Я пробовал несколько учебных пособий / примеров и поисков. Я не мог найти решение.

  • Совет: (Надеюсь, это сделает чью-то жизнь проще.)

Большая проблема, которую я решил при создании образа, заключалась в использовании Windows Share-Point для сохранения моих файлов .php. Все файлы, которые я сохранял, имели что-то вроде UTF BOM.

Когда я сохранил тот же файл, используя простой блокнот в кодировке UTF-8, началось создание моего изображения в PHP.

  • Моя проблема.

У меня есть предложение в URDU (язык, на котором говорят в миллиарде в Южной Азии), скажем, строка — сохраненная в UTF-8, отлично сохраненная в базе данных и показанная в веб-браузерах.

В отличие от английского, буквы урду объединяются, чтобы составить слова. При объединении их видимая форма обрезается — размер или стиль.

Я работаю над этим кодом

<?php
function watermarkImage ($SourceFile, $WaterMarkText, $DestinationFile) {
//$SourceFile is source of the image file to be watermarked
//$WaterMarkText is the text of the watermark
//$DestinationFile is the destination location where the watermarked images will be placed
//Delete if destinaton file already exists
@unlink($DestinationFile);

//This is the vertical center of the image
$top = getimagesize($SourceFile);
$top = $top[1]/2;
list($width, $height) = getimagesize($SourceFile);

$image_p = imagecreatetruecolor($width, $height);

$image = imagecreatefromjpeg($SourceFile);

imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height);

//Path to the font file on the server. Do not miss to upload the font file
$font = 'arial.ttf';

//Font sie
$font_size = 36;

//Give a white shadow
$white = imagecolorallocate($image_p, 255, 255, 155);
imagettftext($image_p, $font_size, 0, 10, $top, $white, $font, $WaterMarkText);

//Print in black color
$black = imagecolorallocate($image_p, 0, 0, 0);
imagettftext($image_p, $font_size, 0, 8, $top-1, $black, $font, $WaterMarkText);

if ($DestinationFile<>'') {

imagejpeg ($image_p, $DestinationFile, 100);

} else {

header('Content-Type: image/jpeg');

imagejpeg($image_p, null, 100);

};

imagedestroy($image);

imagedestroy($image_p);

};

?>

<?php
/*
// The text to draw
require('../../../I18N/Arabic.php');   //  It converts the  left side language to right side
$Arabic = new I18N_Arabic('Glyphs');  //
$font = './DroidNaskh-Bold.ttf';
$text = "جب درخشاں ہوں ستاروں کے چراغ";

$text =  $Arabic->utf8Glyphs('جب درخشاں ہوں ستاروں کے چراغ ');
It gave me   ﻍﺍﺭچ ےک ںﻭﺭﺎﺘﺳںﻭہ ںﺎﺸﺧﺭﺩ ﺐﺟ    ,  reversing the string ,
*/

$text = "ﻍﺍﺭچ ےک ںﻭﺭﺎﺘﺳںﻭہ ںﺎﺸﺧﺭﺩ ﺐﺟ";   // Problem in joining of Urdu -

// Text
// Sequence  of characters reversed in string using utf8Glyphs(  ) ;

$SourceFile = 'nature  (28).jpg';//Source image
$DestinationFile = 'watermarked/sky.jpg';//Destination path
//Call the function to watermark the image
watermarkImage ($SourceFile, $text, $DestinationFile);

//Display watermarked image if desired
if(file_exists($DestinationFile)){
echo "<img src=\"watermarked/sky.jpg\">";
echo "<p>The image has been watermarked at '".$DestinationFile."'</p>";
}
?>

Мой образ создания на FLY для других, чем UTF-8 работает нормально.

С уважением.

2

Решение

Вам понадобится дополнительная библиотека для объединения арабских символов. Проверьте AR-PHP.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]