Home > Backend Development > PHP Tutorial > php 使用GD缩小图片,使用透明格式就失真

php 使用GD缩小图片,使用透明格式就失真

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-06 20:44:43
Original
1087 people have browsed it

按比例缩小图片(是缩小,没有放大)发现有失真的问题,尤其是文字,明显失真,图像资源如果不设置透明格式则没有失真问题

代码片段:

<code>$newimg = imagecreatetruecolor($newwidth,$newheight);

//取消下面这三行设置透明格式则不会失真
imagesavealpha($newimg, true);
$trans_colour = imagecolorallocatealpha($newimg, 0, 0, 0, 127);
imagefill($newimg, 0, 0, $trans_colour);

//
imagecopyresampled($newimg,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);
</code>
Copy after login
Copy after login

怪了,我在iMac下看的确是失真,但是上传到这发现有没有问题,我再上传一张imac预览的截图给大家看看

php 使用GD缩小图片,使用透明格式就失真
php 使用GD缩小图片,使用透明格式就失真
php 使用GD缩小图片,使用透明格式就失真

回复内容:

按比例缩小图片(是缩小,没有放大)发现有失真的问题,尤其是文字,明显失真,图像资源如果不设置透明格式则没有失真问题

代码片段:

<code>$newimg = imagecreatetruecolor($newwidth,$newheight);

//取消下面这三行设置透明格式则不会失真
imagesavealpha($newimg, true);
$trans_colour = imagecolorallocatealpha($newimg, 0, 0, 0, 127);
imagefill($newimg, 0, 0, $trans_colour);

//
imagecopyresampled($newimg,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);
</code>
Copy after login
Copy after login

怪了,我在iMac下看的确是失真,但是上传到这发现有没有问题,我再上传一张imac预览的截图给大家看看

php 使用GD缩小图片,使用透明格式就失真
php 使用GD缩小图片,使用透明格式就失真
php 使用GD缩小图片,使用透明格式就失真

试试 imagick

Related labels:
source:php.cn
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
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template