#43899 [Opn->Asn]: Problem in displaying right to left connected languages (like persian, arabic)
| From: | jani@php.net | Date: | Mon, 27 Oct 2008 12:58:27 +0000 |
| Subject: | #43899 [Opn->Asn]: Problem in displaying right to left connected languages (like persian, arabic) | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-130192@lists.php.net to get a copy of this message | ||
ID: 43899
Updated by: jani@php.net
Reported By: mohamnag at gmail dot com
-Status: Open
+Status: Assigned
Bug Type: GD related
Operating System: Ubuntu Gusty
PHP Version: 5.2.5
-Assigned To:
+Assigned To: pajoye
New Comment:
Assigned to the GD maintainer.
Previous Comments:
------------------------------------------------------------------------
[2008-01-20 12:28:29] mohamnag at gmail dot com
Description:
------------
There is an issue displaying Persian characters in GD generated
images.
In persian, characters are arranged right to left (I mean first char is
the most right hand arranged one). In addition characters are connected.
For example while ی and ک are being written when separated,
they should be written یک when connected. So not only they
should be arranged right to left but also the shape of characters change
during connections.
However displaying text using GD don't arrange persian characters right
to left nor connects them correctly.
Some persian developers have made a php function which corrects the
problem here: http://persiangd.berlios.de/doku.php
but I think it should be solved globally in the original lib.
Reproduce code:
---------------
header("Content-type: image/png");
//uncomment to correct issue:
//include("fagd.php");
$text="یک";
$im = imagecreate(800, 40);
// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
//uncomment to correct issue:
//$text = fagd($string,'fa');
$font = dirname(__FILE__).'/tahoma.ttf';
// Add the text
imagettftext($im, 20, 0, 20, 25, $black, $font,$text);
imagepng($im);
imagedestroy($im);
Expected result:
----------------
this is an image displaying the correct output resulting from passing
the text to imagettftext(), after being parsed using the fagd() function
(provided by persian developers to correct the issue):
http://khone.ir/test/t2.png
Actual result:
--------------
this is an image displaying the problematic view resulting from direct
input of persian text to imagettftext():
http://khone.ir/test/t1.png
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=43899&edit=1