Current Location: Home> Latest Articles> PHP Tutorial: Drawing Lines and Shapes on Images

PHP Tutorial: Drawing Lines and Shapes on Images

M66 2025-10-08

How to Draw Lines and Shapes on Images Using PHP

Introduction

In web development, image processing techniques can enhance user experience and improve the visual appeal of a website. Drawing lines and shapes is an essential part of image processing. PHP, combined with the GD library, makes it easy to create various image effects. This article will demonstrate how to draw lines and shapes on images using PHP, along with complete example code.

Preparation

Before starting, ensure the GD library is installed on your server. You can check its availability with the following code:

<?php
  phpinfo();
?>

Look for "GD Support" in the output page to confirm whether GD is installed. If not, you can install it as follows:

Linux systems:

sudo apt-get install php-gd

Windows systems: edit the php.ini file and uncomment the following line:

extension=gd2

Then restart the server to enable GD library usage.

Drawing Lines

Drawing lines with PHP is simple. The following example demonstrates drawing a red line on an image:

<?php
// Create an image with specified canvas size
$image = imagecreatetruecolor(400, 300);

// Set background color
$bgColor = imagecolorallocate($image, 255, 255, 255);

// Fill background color
imagefill($image, 0, 0, $bgColor);

// Set line color
$lineColor = imagecolorallocate($image, 255, 0, 0);

// Draw a line on the image
imageline($image, 50, 50, 350, 250, $lineColor);

// Output image to browser or file
header('Content-type: image/png');
imagepng($image, 'line.png');

// Destroy image resource
imagedestroy($image);
?>

After running the code, a 400x300 pixel image will be generated with a red line drawn from (50, 50) to (350, 250).

Drawing Shapes

In addition to lines, PHP can draw rectangles, ellipses, and other shapes. The example code is as follows:

<?php
// Create an image with specified canvas size
$image = imagecreatetruecolor(400, 300);

// Set background color
$bgColor = imagecolorallocate($image, 255, 255, 255);

// Fill background color
imagefill($image, 0, 0, $bgColor);

// Set rectangle color
$rectColor = imagecolorallocate($image, 0, 0, 255);

// Draw rectangle
imagerectangle($image, 50, 50, 250, 150, $rectColor);

// Set ellipse color
$ellipseColor = imagecolorallocate($image, 0, 255, 0);

// Draw ellipse
imageellipse($image, 200, 200, 200, 100, $ellipseColor);

// Output image to browser or file
header('Content-type: image/png');
imagepng($image, 'shape.png');

// Destroy image resource
imagedestroy($image);
?>

After running the above code, a 400x300 pixel image will be generated with a blue rectangle and a green ellipse.

Conclusion

Using PHP with the GD library to draw lines and shapes is very straightforward. By flexibly using PHP code, developers can achieve a wide range of image processing effects. We hope the examples in this article help you understand the basics of PHP image drawing.