0
votes

// Create the image $im = imagecreatetruecolor(400, 30);

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

// The text to draw $text = 'अन्ग्रेज़ी से हिन्दी'; // Replace path by your own font path $font = 'mangal.ttf';

// Add some shadow to the text imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg() imagepng($im); imagedestroy($im); ?>

The output text is not same as the input text

2
I assume you mean you want to render the text as a graphic? - Flimzy
Yes, is it possible using javascript - user475685
I'm sure it's possible. Javascript is turing complete, so you can do anything. Now whether it's easy or efficient... and whether there are libraries available to do it... those are entirely different questions. - Flimzy
What exactly are you trying to achieve? You could do this pretty trivially using the canvas element. - beatgammit
i have edited my question, just take a look at it - user475685

2 Answers

0
votes

Not directly; javascript isn't supposed to be allowed to poke around in the guts of binary elements like images. You could render the text using a canvas element, or alternatively apply WebGL, but this is probably not what you want. If it absolutely has to be an image, the most portable way to do that is to make a web app that renders the text to an image and echos it back to a client. Using this, you can easily take a blob of text, create an image element that pulls the object back and then display that in the browser.