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 in <table> to create table header cell?
<thead> <th> <td>
<table><tr>
  <th>Title 1</th>
  <th>Title 2</th>
</tr></table>
Which CSS property sets the distance between lines?
line-height word-spacing margin
.some_class {
  line-height: 150%;
}
Which function opens a new browser window.
alert() confirm() open()
document.getElementById("id_button").onclick = function(){
  window.open("http://coursesweb.net/");
}
Indicate the PHP function that returns an array with names of the files and folders inside a directory.
mkdir() scandir() readdir()
$ar_dir = scandir("dir_name");
var_export($ar_dir);
PHP Image with text on New Lines

Last accessed pages

  1. Check if table exists in database (5837)
  2. CSS Course - Free lessons (10117)
  3. The Power of Now (1038)
  4. PHP getElementById and getElementsByTagName (34614)
  5. Convert XML to JSON in JavaScript (22207)

Popular pages this month

  1. Making DIV Contents Scroll Horizontally, with multiple Div`s inside (2148)
  2. Contact page - CoursesWeb (2081)
  3. Tabs effect with CSS (2081)
  4. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (688)
  5. Insert, Select and Update NULL value in MySQL (545)