欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2024-01-17 08:55:34
...

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

代码片段:

$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);

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

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

回复内容:

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

代码片段:

$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);

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

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

试试 imagick

相关标签: php gd