Home  >  Article  >  Backend Development  >  How to use PHP to develop a simple picture filter function

How to use PHP to develop a simple picture filter function

WBOY
WBOYOriginal
2023-09-20 09:14:01810browse

How to use PHP to develop a simple picture filter function

How to use PHP to develop a simple picture filter function?

Introduction: In web development, adding image filters can add some interest to the user's visual experience. This article will introduce how to use PHP to develop a simple picture filter function and provide specific code examples.

  1. Ensure environment configuration
    Before you start, make sure you have correctly configured the PHP environment and installed the GD library, because we will use the GD library to process images. You can enable the GD library in the php.ini file or select the GD library when installing PHP.
  2. Load the original image
    First, we need to load the original image to be filtered. Use the imagecreatefromjpeg() function in the code and pass in the path of the image file as a parameter to load a .jpeg format image. If you want to load images in other formats, you need to change the corresponding functions.
$sourceImage = imagecreatefromjpeg("path/to/source/image.jpg");
  1. Create target image
    Next, we need to create a new target image and set its width, height and background color. You can use the imagecreatetruecolor() function to create a true color blank picture and set its width, height and background color.
$targetImage = imagecreatetruecolor(imagesx($sourceImage), imagesy($sourceImage));
$backgroundColor = imagecolorallocate($targetImage, 255, 255, 255);
imagefill($targetImage, 0, 0, $backgroundColor);
  1. Apply filter effects
    We can use different functions provided by the GD library to achieve different filter effects. Here are a few common filter examples:
  • Grayscale filter
    Grayscale filter can convert color pictures into black and white grayscale pictures. This can be achieved using the imagefilter() function and passing in the parameter IMG_FILTER_GRAYSCALE.
imagefilter($sourceImage, IMG_FILTER_GRAYSCALE);
  • Inversion filter
    The inversion filter can invert the color of the picture, that is, black becomes white, and white becomes black. This can be achieved using the imagefilter() function and passing in the parameter IMG_FILTER_NEGATE.
imagefilter($sourceImage, IMG_FILTER_NEGATE);
  • Nostalgic Filter
    Nostalgic filter can add an old-fashioned feel to the picture, making it look like an old photo. Use the imagefilter() function and pass in the parameters IMG_FILTER_GRAYSCALE and IMG_FILTER_COLORIZE to achieve this.
imagefilter($sourceImage, IMG_FILTER_GRAYSCALE);
imagefilter($sourceImage, IMG_FILTER_COLORIZE, 100, 50, 0);
  1. Output the processed image
    After completing the application of the filter effect, we need to output the processed image. You can use the imagejpeg() function to save the target image in .jpeg format and specify the save path.
imagejpeg($targetImage, "path/to/target/image.jpg");
  1. Complete code example
$sourceImage = imagecreatefromjpeg("path/to/source/image.jpg");
$targetImage = imagecreatetruecolor(imagesx($sourceImage), imagesy($sourceImage));
$backgroundColor = imagecolorallocate($targetImage, 255, 255, 255);
imagefill($targetImage, 0, 0, $backgroundColor);
imagecopy($targetImage, $sourceImage, 0, 0, 0, 0, imagesx($sourceImage), imagesy($sourceImage));

// 添加滤镜效果
imagefilter($sourceImage, IMG_FILTER_GRAYSCALE);
// 或者:imagefilter($sourceImage, IMG_FILTER_NEGATE);
// 或者:imagefilter($sourceImage, IMG_FILTER_GRAYSCALE);
//        imagefilter($sourceImage, IMG_FILTER_COLORIZE, 100, 50, 0);

// 输出处理后的图片
imagejpeg($targetImage, "path/to/target/image.jpg");

// 释放图片资源
imagedestroy($sourceImage);
imagedestroy($targetImage);

Summary: Through the above steps, we can use PHP to develop a simple picture filter function. In actual development, you can adjust filter effects or add more filter effects according to different needs. Using PHP and the GD library, you can easily perform various processing on images.

The above is the detailed content of How to use PHP to develop a simple picture filter function. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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