Maison >développement back-end >tutoriel php >php 使用GD缩小图片,使用透明格式就失真

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

WBOY
WBOYoriginal
2016-06-06 20:44:431070parcourir

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

代码片段:

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

怪了,我在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>

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

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

试试 imagick

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn