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