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预览的截图给大家看看

原图
缩小后的图片
imac上预览的效果

阅读 5.4k
1 个回答

试试 imagick

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题