微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将阿拉伯语文本导出为图像

我有一堆UTF-8的阿拉伯语文本.我试图显示此设备的设备不支持显示的阿拉伯语文本.因此,我需要将文本转换为图像.

我想将每行文本保存为具有特定宽度的图像.我也需要使用特定的字体.做这个的最好方式是什么?有人知道这里有用的工具吗?

到目前为止我遇到的问题:

PHP GD:阿拉伯字母看起来是分开的,不应该像草书一样.
VB.net:我可以将每行文本转储到richtextBox中……但我不知道如何导出该控件的图像.
Flash:不支持从右到左文本.

解决方法

至于阿拉伯语,你需要一个库来反转PHP / GD的字符/字形.见例如 http://sourceforge.net/projects/ar-php/http://www.ar-php.org/.

确保您的PHP文件编码是unicode / UTF.
例如>打开记事本>另存为>编码为UTF-8:

使用imagettftext在PHP中使用阿拉伯语排版的示例用法

<?PHP 
    // The text to draw
    require('./I18N/arabic.PHP'); 
    $arabic = new I18N_arabic('Glyphs'); 
    $font = './DroidNaskh-Bold.ttf';
    $text = $arabic->utf8Glyphs('لغةٌ عربيّة');

    // Create the image
    $im = imagecreatetruecolor(600,300);

    // Create some colors
    $white = imagecolorallocate($im,255,255);
    $grey = imagecolorallocate($im,128,128);
    $black = imagecolorallocate($im,0);
    imagefilledrectangle($im,599,299,$white);

    // Add the text
    imagettftext($im,50,90,$black,$font,$text);

    // Using imagepng() results in clearer text compared with imagejpeg()
    imagepng($im,"./output_arabic_image.png");
    echo 'open: ./output_arabic_image.png';
    imagedestroy($im); 
?>

输出

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐