As a scripting language, PHP has a rich library of image processing functions, which can easily perform various processing operations on images, such as scaling, cutting, watermarking, filters, etc., and supports images in various formats.
In this article, we will introduce commonly used image processing functions in PHP, and provide practical application scenarios and sample codes.
1. Zooming and Cropping
Zooming and cropping are common operations for processing images. Below we will introduce the corresponding PHP image processing functions in detail.
imagecopyresized() is the most commonly used scaling function in PHP, which can change the size of an image while maintaining the aspect ratio of the original image.
The syntax of this function is as follows:
bool imagecopyresized ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $ dst_h , int $src_w , int $src_h )
Parameter explanation:
The following is a code example for scaling an image:
$src_image = imagecreatefrompng('origin.png');
$dst_image = imagecreatetruecolor (300, 300);
$src_w = imagesx($src_image);//Get the source image width
$src_h = imagesy($src_image);//Get the source image height
$dst_w = 300;
$dst_h = 300;
imagecopyresized($dst_image, $src_image, 0, 0, 0, 0, $dst_w, $dst_h, $src_w, $src_h);
imagepng($dst_image, 'resize .png');
imagedestroy($src_image);
imagedestroy($dst_image);
?>
imagecopyresampled( ) is a function used for cropping in PHP. It has a similar function to imagecopyresized(), but can achieve higher quality scaling effects.
The syntax of this function is as follows:
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $ dst_h , int $src_w , int $src_h )
The parameter explanation is the same as imagecopyresized().
The following is a code example for cropping an image:
$src_image = imagecreatefrompng('origin.png');
$dst_image = imagecreatetruecolor( 200, 200);
$src_w = imagesx($src_image);//Get the source image width
$src_h = imagesy($src_image);//Get the source image height
$dst_w = 200;
$dst_h = 200;
$x = 0;
$y = 0;
$src_x = ($src_w-$dst_w)/2;
$src_y = ($src_h-$ dst_h)/2;
imagecopyresampled($dst_image, $src_image, $x, $y, $src_x, $src_y, $dst_w, $dst_h, $dst_w, $dst_h);
imagepng($dst_image, ' crop.png');
imagedestroy($src_image);
imagedestroy($dst_image);
?>
2. Watermark
Add watermark to the picture It is a scenario that is often involved in practical applications, and PHP also provides corresponding function support.
The imagecopy() function can be used to overlay one image onto another image to achieve a watermark effect.
The syntax of this function is as follows:
bool imagecopy ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $ src_h )
Parameter explanation:
The following is a code example with a watermark:
$src_image = imagecreatefrompng('origin.png');
$watermark_image = imagecreatefrompng('watermark.png');
$src_w = imagesx($src_image);//Get the source image width
$src_h = imagesy($src_image);//Get the source image height
$watermark_w = imagesx($watermark_image); // Get the watermark width
$watermark_h = imagesy($watermark_image); // Get the watermark height
$max_width = $src_w - $watermark_w - 10; // Maximum watermark position allowed Width
$max_height = $src_h - $watermark_h - 10; //The maximum height allowed for the watermark position
$x = rand(10, $max_width); //The abscissa of the randomly generated watermark position
$ y = rand(10, $max_height); // Randomly generate the vertical coordinate of the watermark position
imagecopy($src_image, $watermark_image, $x, $y, 0, 0, $watermark_w, $watermark_h);
imagepng($src_image, 'watermarked.png');
imagedestroy($src_image);
imagedestroy($watermark_image);
?>
3. Filter
PHP also provides a variety of filter effects to make pictures more interesting and artistic.
The imagefilter() function supports a variety of filter effects, such as inversion, grayscale, blur, etc. For details, please refer to the PHP official documentation.
The following is a code example using filter effects:
$src_image = imagecreatefrompng('origin.png');
imagefilter($src_image, IMG_FILTER_PIXELATE, 15, true);//Mosaic
imagefilter($src_image, IMG_FILTER_CONTRAST , -50);//Adjust contrast
imagepng($src_image, 'filter.png');
imagedestroy($src_image);
?>
The above code implements Mosaic and contrast adjustment of a picture.
To sum up, PHP provides powerful support in image processing, and the functions are simple and easy to use, which can meet the needs of most application scenarios. Understanding these commonly used image processing functions will greatly improve efficiency in web application development.
The above is the detailed content of Introduction to the use of PHP image effect processing functions. For more information, please follow other related articles on the PHP Chinese website!