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

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

WBOY
WBOYOriginal
2016-06-06 20:44:431026Durchsuche

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

代码片段:

<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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn