Write text on a dynamically generated image using PHP
Published 2 years, 9 months ago in Image Handling and PHPThis tutorial will tell you how to write text to a blank dynamically generated PNG image in PHP. This is fairly simple, so it will just be the first step in a series of tutorials dealing with images in PHP. The image functions require the GD library to be installed.
The code we're using and the output is below, and below that is an explanation of what the code does.
-
<?
-
// create an image with width 100px, height 20px
-
$image = imagecreate(100, 20);
-
-
// create a red colour for the background
-
// as it is the first call to imagecolorallocate(), this fills the background automatically
-
$red_background = imagecolorallocate($image, 255, 0, 0);
-
// create a black colour for writing on the image
-
$black = imagecolorallocate($image, 0, 0, 0);
-
-
// write the string "vdhri.net" on the image
-
// the top left of the text is at the position (10, 2)
-
imagestring($image, 4, 10, 2, ‘vdhri.net’, $black);
-
-
// output the image
-
// tell the browser what we’re sending it
-
// output the image as a png
-
imagepng($image);
-
-
// tidy up
-
imagedestroy($image);
-
?>
Output:![]()
The first step is to tell PHP to create the image, we do this with the imagecreate() function, which takes the desired width and height as parameters. This returns the image identifier, which we store in the variable $image.
Next, we use the imagecolorallocate() function to define some colours for use in our image. This takes as parameters, the image identifier we're using, then the red, green and blue values for the colour. The first time we call imagecolorallocate() it fills in the background of the image with that colour.
We then use the imagestring() function to write text on the image. This function takes six parameters: the image identifier, an integer 1-5 determining which built in font to use (we're choosing 4), x and y coordinates giving the top left position of the text, the text to write, and the colour to write it in.
It's then time to output the image.
First, we need to tell the browser what type of image we're sending (this is normally text, which wouldn't work for images), we do this with the line:
Header('Content-type: image/png');
Next, we need to tell PHP to output the image as a PNG, this is done with the imagepng() function, which takes the image identifier as a parameter.
That's it! The last thing we do is to use the imagedestroy() function to delete the image from memory, it takes the image identifier as a parameter.
If you have a low-traffic website, consider joining the Money4Banners advertising network. They will pay you £10 + £5 each month for displaying a small advert on three of your pages, regardless of traffic. American webmasters are welcome, and since £10 == $20, you make more!
6 Responses to “Write text on a dynamically generated image using PHP”
Leave a Reply
You must log in to post a comment.
Search
Categories
- ASP (3)
- ASP Basics (3)
- Blogs (2)
- C# (1)
- deals (1)
- Firefox (1)
- Flash (1)
- Google (6)
- Hacks (4)
- Java (1)
- PHP (12)
- Basics (8)
- Files (1)
- Image Handling (3)
- Puzzles (1)
- Ruby (1)
- Tips (10)
- Web Hosting (3)
- Web Hosting Articles (1)
- Web Hosting News (2)
- Windows (6)
- Wordpress (2)
Related Entries
- PHP
- Write Text on to an existing PNG image using PHP
- Rotating Images with PHP
- Generating Random Numbers in PHP
- How to stop .avi files from locking up in Windows Explorer
- The Difference Between require() and include()
- How to use the QueryString in ASP
- How to use the query string in PHP
- How To Add A New Line in a C# or Visual Basic TextBox
- Generate a Month Calendar In PHP
Hi there,
I would like to know if someone can help in writing a script like one used at:
http://www.snugglepie.com
http://www.tickerfactory.com
Hi,
problem: japanese text to Image conversion problem.
when i tried to convert japanese charcter to image then its displaying nothing.
plz help……….
To write Japanese or any other language on GD image, you have to get the right font, use imagettftext function.
can u help me in creating image verification system kind of image which is used to check whether data is entered by a human being
Hello guys,
i need to know that how i create an image with two images like mosaic view (Create an image with two images showing) i also need to know that how can i make hyper link or tool tip for every Image in mosaic
thanx,
waiting for soon reply.
Hi I would like to know how can I incerease th font of the custom text I am writing in can you help me please it will be greatful.
Thanks in advance. Any scripts that is ready will be appreciable.
Thanks very much
Regards
Hemal Jivani