In this page it is presented a PHP function that can be used to create simple JPEG images with PHP, with text displayed on multiple lines.
- This function (named textToImg() can receive 4 arguments: the text string, the image width (in pixels), background color, and text color. The last 2 parameters are optionals, they are by default: blue, and a green color.
Here's the code of the function:
// Function to create images with PHP, with text on new lines
// Receives the text-string, image-width (in pixels), and optional: arrays with RGB color for background-color, text-color
function textToImg($text, $image_width, $colour = array(0,1,244), $background = array(130,200,150)) {
  $font = 5;
  $line_height = 15;
  $padding = 5;
  $text = wordwrap($text, ($image_width/10));
  $lines = explode("\n", $text);
  $image = imagecreate($image_width,((count($lines) * $line_height)) + ($padding * 2));
  $background = imagecolorallocate($image, $background[0], $background[1], $background[2]);
  $colour = imagecolorallocate($image,$colour[0],$colour[1],$colour[2]);
  imagefill($image, 0, 0, $background);
  $i = $padding;

  foreach($lines as $line){
    imagestring($image, $font, $padding, $i, trim($line), $colour);
    $i += $line_height;
  }

  // output to show the image in browser
  header("Content-type: image/jpeg");
  imagejpeg($image);

  // to save the image on server, delete '\\\', exit;, the header() and imagejpeg() above, add your dir/img
///  imagejpeg($image, 'dir/img.jpg');

  imagedestroy($image);
  exit;
}
- The textToImg() function displays the JPEG image in browser. If you want to save the image on server, delete these lines of code:
header("Content-type: image/jpeg");
imagejpeg($image);
...
exit;
And delete the three backslashes on this line ('dir/img.jpg' is the directory and the image name saved on server):
\\\ imagejpeg($image, 'dir/img.jpg');
Example:
<?php
// Here add the textToImg() function

$text = 'Free PHP MySQL course: http;//coursesweb.net/ , with video tutorials, scripts, and code snippets.';

// image width in pixels
$image_width = 250;

// calls the function
textToImg($text, $image_width);
Results:
Free PHP MySQL course: http;//coursesweb.net/ , with video tutorials, scripts, and code snippets.

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which meta tag provides a short description of the page?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 characters that describes the content of the page" />
Which CSS property is used to stop the wrapping effect of the "float"?
clear text-align position
#some_id {
  clear: both;
}
Click on the method which gets an array with all the elements in the document that have a specified tag name.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicate the PHP function which returns the number of elements in array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
PHP Image with text on New Lines

Last accessed pages

  1. Get Attribute (ID, Class, Name, Title, Src) with jQuery (64124)
  2. Get Mouse coordinates inside a Div or an Image (10436)
  3. querySelector and querySelectorAll (12462)
  4. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (97436)
  5. Images and Audio Uploader addon for CKEditor (3365)

Popular pages this month

  1. Making DIV Contents Scroll Horizontally, with multiple Div`s inside (1440)
  2. Contact page - CoursesWeb (1403)
  3. Tabs effect with CSS (1398)
  4. PHP getElementById and getElementsByTagName (664)
  5. Get Attribute (ID, Class, Name, Title, Src) with jQuery (542)