PHP Tutorial: imagefilledrectangle() Function

beginner
6 min

PHP Tutorial: imagefilledrectangle() Function

Welcome to our in-depth PHP tutorial on the imagefilledrectangle() function! Today, we're going to learn how to create and fill rectangles on images using this powerful function. By the end of this lesson, you'll have a solid understanding of this function, and you'll be able to apply it to your own projects. 🎯

What is imagefilledrectangle()?

The imagefilledrectangle() function is a part of the PHP GD library. It allows you to create and fill a rectangle on an image with a specified color. Let's dive into the syntax, parameters, and some practical examples.

Syntax and Parameters

The basic syntax for the imagefilledrectangle() function is as follows:

php
imagefilledrectangle(image, x, y, width, height, color)
  • image: The image on which you want to draw the rectangle.
  • x: The x-coordinate of the top-left corner of the rectangle.
  • y: The y-coordinate of the top-left corner of the rectangle.
  • width: The width of the rectangle.
  • height: The height of the rectangle.
  • color: The color to fill the rectangle with.

Creating a Simple Rectangle

Let's create a simple rectangle on an image and save it to a file.

php
<?php // Create a new image $img = imagecreatetruecolor(200, 200); // Set the background color $bgColor = imagecolorallocate($img, 255, 255, 255); imagefill($img, 0, 0, $bgColor); // Create a red rectangle $rectColor = imagecolorallocate($img, 255, 0, 0); imagefilledrectangle($img, 50, 50, 100, 100, $rectColor); // Save the image imagepng($img, 'rectangle.png'); // Free up memory imagedestroy($img); ?>

In this example, we first create a 200x200 image with a white background. Then, we create a red rectangle with a width and height of 100 pixels, located at (50, 50) on the image. Finally, we save the image as rectangle.png and free up the memory.

πŸ’‘ Pro Tip: Don't forget to include the GD library in your PHP installation. If you're using a shared hosting, it's likely that it's already included.

Advanced Example: Creating a Scoreboard

Now, let's make our imagefilledrectangle() function more practical by creating a scoreboard for a simple game.

php
<?php // Create a new image $img = imagecreatetruecolor(500, 200); // Set the background color $bgColor = imagecolorallocate($img, 255, 255, 255); imagefill($img, 0, 0, $bgColor); // Create scoreboard $scoreX = 50; $scoreY = 50; $scoreWidth = 100; $scoreHeight = 50; $scoreGap = 150; $player1Score = 10; $player2Score = 5; // Draw player 1 score $player1Color = imagecolorallocate($img, 0, 255, 0); $player1Text = "Player 1: {$player1Score}"; imagettftext($img, 20, 0, $scoreX, $scoreY, $player1Color, 'Arial.ttf', $player1Text); $scoreX += $scoreWidth + $scoreGap; // Draw player 2 score $player2Color = imagecolorallocate($img, 255, 0, 0); $player2Text = "Player 2: {$player2Score}"; imagettftext($img, 20, 0, $scoreX, $scoreY, $player2Color, 'Arial.ttf', $player2Text); // Save the image imagepng($img, 'scoreboard.png'); // Free up memory imagedestroy($img); ?>

In this example, we create a scoreboard for a simple game with two players. The scores are displayed in green (Player 1) and red (Player 2). We use the imagettftext() function to display text on the image.

πŸ“ Note: Make sure you have the Arial.ttf font installed on your system for this example to work correctly.

Quiz

That's all for today's PHP tutorial! In the next lesson, we'll dive deeper into the world of PHP by learning about the imagecopy() function, which lets you copy and merge images. Stay tuned! πŸš€