Home Backend Development PHP Tutorial 10 Tips for PHP Scripting (4)_PHP Tutorial

10 Tips for PHP Scripting (4)_PHP Tutorial

Jul 21, 2016 pm 04:05 PM
php function create dynamic graphics processing exist install Library Skill Skill of third party combine Script

Dynamically create images
After installing some third-party function libraries and combining your graphics processing skills, you can create and process images with PHP. In fact, you don't need too advanced knowledge of geometry. I always failed this class in middle school, and I still know how to create images in PHP now!

Before using basic image creation functions, you need to install the GD library. If you want to use JPEG-related image creation functions, you also need to install jpeg-6b. When using Type 1 fonts in images, t1lib must also be installed.

Here, you need to make further adjustments to your system. First, you must install t1lib to provide image processing support, followed by jpeg-6b. The third step is to install the GD function library. You have to complete these three tasks in order. The reason is that you need to compile the GD library to use the jpeg-6b library. If jpeg-6b is installed first, the compilation will go wrong. By then, you will be busy and have nothing to do. .

After installing the above three function libraries, you need to reconfigure PHP. This is your specialty when installing the DSO version of PHP! Then execute the make clean command, and then add the following code to the current configuration indicator:

--with-gd=[/path/to/gd]
--with-jpeg-dir=[ /path/to/jpeg-6b]
--with-t1lib=[/path/to/t1lib]

Finally execute the make and make install commands in order to complete the preparation task. Restart Apache and run the phpinfo() function to check whether the new features are functioning properly.

Depending on the GD library you have installed, you may or may not have the ability to create GIF or PNG images. Here's the kicker: if you have gd-1.6 or earlier installed, you can handle GIFs but not PNGs. If you have gd-1.6 or later installed, you can process PNGs but not GIFs.

Creating a simple image requires several functions. I'll walk you through the process step by step:

Output a file header that contains the MIME type of the image you created, in our case PNG.


Use ImageCreate() to create a variable to store a blank image. This function requires the image size in pixels. The format is ImageCreate(x_size, y_size). For a 250-X-250 pixel image, the usage is as follows:

$newImg = ImageCreate(250,250);

Because your image is still Blank, so you still have to try to fill it with some color, but first you need to assign a name to each color according to its RGB value, which uses the ImageColorAllocate() function. The format of the function is ImageColorAllocate([image], [red], [green], [blue]). If it is sky blue, the specific code is as follows:

$skyblue = ImageColorAllocate($newImg,136,193,255);

Next, you need to call the ImageFill() function to fill the image with the above color. ImageFill(), there are several versions of the function, such as ImageFillRectangle(), ImageFillPolygon() and so on. For the sake of simplicity, we use the ImageFill() function for color filling. The format is as follows:

ImageFill([image], [start x point], [start y point], [color])
ImageFill ($newImg,0,0,$skyblue);

Finally, you create the image and destroy the image stream to free up memory:

ImagePNG($newImg);
ImageDestroy($ newImg); ?>

The specific code looks a lot like the following:

$newImg = ImageCreate(250,250);
$skyblue = ImageColorAllocate($newImg,136,193,255);
ImageFill($newImg,0,0,$skyblue);
ImagePNG($newImg);
ImageDestroy( $newImg);
?>

If you call this script skyblue.php and access it with your own browser, you will see a 250-X-250 pixel large blue PNG image .

You can also use image creation functions to process images, such as creating thumbnails of large images.

Suppose you want to create a 35-X-35 pixel thumbnail of an image. What you do is create a new 35 x 35 pixel image; create an image stream containing its original image contents; then resize the original image and place it into the new blank image.

The key function used to achieve the above purpose is ImageCopyResized(). The format of this function is as follows: ImageCopyResized([new image handle],[original image handle],[new image X], [new Image Y], [original image X], [original image Y], [new image X], [new image Y], [original image X], [original image Y]);

The following is the code Note.

header("Content-type: image/png");

/* set up variables to hold the height and width of your new image */
$newWidth = 35;
$newHeight = 35;

/* create a blank, new image of the given new height and width */
$newImg = ImageCreate($newWidth,$newHeight);

/* get the data from the original, large image */
$origImg = ImageCreateFromPNG("test .png");

/* copy the resized image. Use the ImageSX() and ImageSY functions to get the x and y sizes of the orginal image. */
ImageCopyResized($newImg,$origImg ,0,0,0,0,$newWidth,$newHeight,ImageSX($origImg),ImageSY($origImg));

/* create final image and free up the memory */
ImagePNG ($newImg);
ImageDestroy($newImg); ?>

If you call the above script resized.php and access it with your own browser, you should see a 35-X- Miniature PNG image of 35 pixels size.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/315583.htmlTechArticleDynamicly create images. After installing some third-party function libraries, combined with your graphics processing skills, you can You can now create and process images with PHP. In fact, you don’t need too much geometry...
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
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
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)

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 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.

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.

CakePHP Logging CakePHP Logging Sep 10, 2024 pm 05:26 PM

Logging in CakePHP is a very easy task. You just have to use one function. You can log errors, exceptions, user activities, action taken by users, for any background process like cronjob. Logging data in CakePHP is easy. The log() function is provide

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

CakePHP Services CakePHP Services Sep 10, 2024 pm 05:26 PM

This chapter deals with the information about the authentication process available in CakePHP.

See all articles