PHP putting text into an image
JUN
23
There are times when you will want to put text into an image and display that image. Perhaps you want to protect some text from bots, perhaps you want to use a custom font, or perhaps you are building a CAPTCHA implementation. Regardless of your motive, putting text into an image using the GD extension of php is simple. For this example, you must have TTF support in GD.
// font must be relative path or a full path, gd requires it $font = './afont.ttf'; $width = 146; $height = 46; $font_size = 18; $text = 'some text'; $img = imagecreate($width, $height); // resource, x, y, color imagefill($img,0,0,imagecolorallocate($img,255,255,255)); // resource, font size, angle, x, y, color, font file path, text imagettftext($img, $font_size, 0, 1, 28, imagecolorallocate($img, 0,0,0), $font, $text); // so the browser will display the image header("Content-Type: image/JPEG"); // resource, filename, quality imagejpeg($img,null,100); // free the resource, this is a good habit so your //script will release some memory imagedestroy($img);
A couple things to note, the font path has to be a relative or full path so GD can load it; if you have errors then remove the header() call to see what the actual errors are.