Home  >  Article  >  Backend Development  >  How to solve the distortion problem of php gd library

How to solve the distortion problem of php gd library

藏色散人
藏色散人Original
2021-10-14 11:30:192105browse

php gd library distortion solution: 1. Open the corresponding PHP file; 2. Create a canvas with the same size as the background image through the imagecreatetruecolor function; 3. Cover the required image according to actual needs.

How to solve the distortion problem of php gd library

The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer

How to solve the php gd library distortion problem?

Image distortion problem when PHP is based on GD drawing

In the past two days, I have made a small thing, superimposing and combining pictures to form a new picture. I used the copper plug-in to cut the picture, and the effect was terrible. The picture is distorted, and the distortion is similar to the loss of detail and color in GIF animations on the Internet. So I found the following solution online, and I personally tested it and it worked.

The most critical step is to use the imagecreatetruecolor(a,b) function to create a canvas with the same size as the background image.

$bgimg = imagecreatetruecolor(imagesx($im), imagesy($im));

With this $bgimg as the lowest, use

imagecopymerge($bgimg,$im, 0, 0, 0, 0,imagesx($im),imagesy($im), 100);

to cover the original base image $im, and then cover the required image upwards according to actual needs.

Of course, you can also add text.

imagefttext($bgimg, $name_font, 0, $name_orginX ,$name_orginY, $color, $font, $name);

Finally

header('Content-type: image/png');
header('Content-type: image/jpg');
$result = imagepng($bgimg);
imagedestroy($bgimg);

This is not the whole code, but those who know GD should know where to put this code.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to solve the distortion problem of php gd library. 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