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 tag is used to add lists into <ul> and <ol> elements?
<dt> <dd> <li>
<ul>
 <li>http://coursesweb.net/html/</li>
 <li>http://coursesweb.net/css/</li>
</ul>
Which value of the "display" property creates a block box for the content and ads a bullet marker?
block list-item inline-block
.some_class {
  display: list-item;
}
Which instruction converts a JavaScript object into a JSON string.
JSON.parse() JSON.stringify eval()
var obj = {
 "courses": ["php", "javascript", "ajax"]
};
var jsonstr = JSON.stringify(obj);
alert(jsonstr);    // {"courses":["php","javascript","ajax"]}
Indicate the PHP class used to work with HTML and XML content in PHP.
stdClass PDO DOMDocument
$strhtml = '<body><div id="dv1">CoursesWeb.net</div></body>';
$dochtml = new DOMDocument();
$dochtml->loadHTML($strhtml);
$elm = $dochtml->getElementById("dv1");
echo $elm->nodeValue;    // CoursesWeb.net
PHP Image with text on New Lines

Last accessed pages

  1. AJAX and JSON (1019)
  2. Wake Up! (3449)
  3. Read Excel file data in PHP - PhpExcelReader (63706)
  4. JavaScript Course - Free lessons (15710)
  5. PHP-MySQL free course, online tutorials PHP MySQL code (48156)

Popular pages this month

  1. Contact page - CoursesWeb (1955)
  2. Tabs effect with CSS (1942)
  3. Insert, Select and Update NULL value in MySQL (1036)
  4. Read Excel file data in PHP - PhpExcelReader (832)
  5. PHP getElementById and getElementsByTagName (513)