Home Backend Development PHP Tutorial Use the GD2 function to draw geometric figures (Typical Application Tutorial 4 of PHP graphics images)

Use the GD2 function to draw geometric figures (Typical Application Tutorial 4 of PHP graphics images)

Apr 24, 2017 pm 05:25 PM

Using the GD2 function to draw geometric figures (Typical application tutorial 4 of PHP graphics and images)

This article mainly explains the use of the GD2 function to draw geometric figures. First of all, we need to create an image. As we said in the previous article, creating an image is the first step in all image operations. Then we draw the graphic outline based on the coordinate points on the background, and finally output the graphic!

Then we introduced how to generate a verification code in the previous article "Using image processing technology to generate verification codes (Typical application tutorial of PHP graphics images 3)", I don’t know, friends Have you mastered this knowledge point? Friends who are not familiar with it can review it! Today we explain drawing geometric shapes!

Technical points of this article:

In this article, the GD2 function is mainly used to draw geometric figures, some of which have been performed in previous articles. For a detailed introduction, below we introduce the commonly used functions:

(1) imagecreatetruecolor() function

This function is used to recommend a full-color image file Resource, the syntax format of this function is as follows:

int imagecreatetruecolor(int x_size,int y_size);
Copy after login

The parameters x_size and y_size are the width and height of the image respectively, in pixels (px).

(2)imagecolorallocate() function

This function is used to match the color of the specified image for use by other drawing functions. The syntax format is as follows:

int imagecolorallocate(int im, int red, int green, int blue);
Copy after login

The parameter im represents the handle of the image; the parameters red, green, and blue are the three primary colors of RGB, and their values ​​are integers from 0 to 255 or hexadecimal 0x00~0xff. This function must be called to create each color used in the image represented by image.

(3)imagefilledarc() function

This function is used to draw an ellipse and fill it. The syntax format of this function is as follows:

int imagefilledarc(im, int cx , int w, int h, int s, int e, int color, int style);
Copy after login

In In the image represented by im, draw an elliptical arc with cx, cy (the upper left corner of the image is 0, 0) as the center of the circle. Returns true if successful, false if failed. w and h specify the width and height of the ellipse respectively, the s and e parameters specify the starting point and end point in angle, and color represents the filling color value.

style can be the bitwise OR (OR) value of the following values:

  • IMG_ARC_PIE

  • IMG_ARC_CHORD

  • IMG_ARC_NOFILL

  • IMG_ARC_EDGED

IMG_ARC_PIE and IMG_ARC_CHORD are mutually exclusive; IMG_ARC_CHORD is just connected with a straight line Starting and ending points, IMG_ARC_PIE produces a circular boundary (if both are used, IMG_ARC_CHORD takes effect). IMG_ARC_NOFILL specifies that the arc or chord has only an outline, not a fill. IMG_ARC_EDGED specifies a straight line connecting the start and end points to the center point. Used with IMG_ARC_NOFILL, this is a good way to draw the outline of a pie chart (without filling it).

(4)imagefilledrectangle() function

This function is used to draw a filled rectangle. The syntax format of this function is as follows:

bool imagefilledrectangle ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int$color )
Copy after login

This function colors the closed rectangular area of ​​the picture. The parameters x1, y1 and x2, y2 are the coordinates of the diagonal of the rectangle respectively. The parameter col represents the color to be painted;

(5)imagedestroy( )Function

This function is used to delete graphics and release memory space. The syntax format is as follows:

int imagedestroy(int im);
Copy after login

The parameter im is the imagecreate() function, the graphic created by the imagecreatetruecolor() function!

Let’s now take a look at how to draw geometric figures:

The specific code for the implementation process is as follows:

<?php
header(&#39;Content-type: image/png&#39;);// 告诉浏览器,这个文件,是一个png图片
$img = imagecreatetruecolor(260, 200);//创建一个400X200的画布
$green = imagecolorallocate($img, 20, 145, 40);//定义一个绿颜色
$darkgreen = imagecolorallocate($img, 25, 80, 25);//定义一个深绿颜色
$blue = imagecolorallocate($img, 0, 225, 205);//定义一个蓝颜色
$darkblue = imagecolorallocate($img, 10, 180, 200);//定义一个深蓝颜色
$red = imagecolorallocate($img, 255, 0, 0);//定义一个红颜色
$bluered = imagecolorallocate($img, 202, 10, 0);//定义一个深红颜色
for($i = 110; $i > 100 ; $i--){
    imagefilledarc($img,130,$i,150,100,0,95,$darkgreen,IMG_ARC_PIE);
    imagefilledarc($img,130,$i,150,100,95,125,$darkblue,IMG_ARC_PIE);
    imagefilledarc($img,130,$i,150,100,120,360,$bluered,IMG_ARC_PIE);
}
imagefilledarc($img,130,$i,150,100,0,95,$green,IMG_ARC_PIE);
imagefilledarc($img,130,$i,150,100,95,125,$blue,IMG_ARC_PIE);
imagefilledarc($img,130,$i,150,100,120,360,$red,IMG_ARC_PIE);
imagepng($img);//以png格式输出图像
imagedestroy($img);//释放资源
?>
Copy after login

Output results As follows:

Use the GD2 function to draw geometric figures (Typical Application Tutorial 4 of PHP graphics images)

Using the GD2 function to draw geometric figures, we have finished introducing it here. I believe everyone can master this function, so let’s continue to introduce the image. How to add row and column labels to the chart, please read "Using GD2 function to add row and column labels to the chart (Typical Application Tutorial of PHP Graphics and Images 5)" for details!

The above is the detailed content of Use the GD2 function to draw geometric figures (Typical Application Tutorial 4 of PHP graphics images). For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

CakePHP Project Configuration CakePHP Project Configuration Sep 10, 2024 pm 05:25 PM

In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

CakePHP Date and Time CakePHP Date and Time Sep 10, 2024 pm 05:27 PM

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

CakePHP Routing CakePHP Routing Sep 10, 2024 pm 05:25 PM

In this chapter, we are going to learn the following topics related to routing ?

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

To work on file upload we are going to use the form helper. Here, is an example for file upload.

CakePHP Working with Database CakePHP Working with Database Sep 10, 2024 pm 05:25 PM

Working with database in CakePHP is very easy. We will understand the CRUD (Create, Read, Update, Delete) operations in this chapter.

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

CakePHP Creating Validators CakePHP Creating Validators Sep 10, 2024 pm 05:26 PM

Validator can be created by adding the following two lines in the controller.

See all articles