如何在PHP中以透明方式调整png的大小?

如何在PHP中以透明方式调整png的大小?,第1张

如何在PHP中以透明方式调整png的大小?

据我所知在* 执行imagecolorallocatealpha() 之前 ,您需要将混合模式设置为

false
,将save alpha
channel标志设置为。
true

*

<?phppublic function getImageResized($image, int $newWidth, int $newHeight) {    $newImg = imagecreatetruecolor($newWidth, $newHeight);    imagealphablending($newImg, false);    imagesavealpha($newImg, true);    $transparent = imagecolorallocatealpha($newImg, 255, 255, 255, 127);    imagefilledrectangle($newImg, 0, 0, $newWidth, $newHeight, $transparent);    $src_w = imagesx($image);    $src_h = imagesy($image);    imagecopyresampled($newImg, $image, 0, 0, 0, 0, $newWidth, $newHeight, $src_w, $src_h);    return $newImg;}?>

更新 :此代码仅在不透明度= 0的背景透明上工作。如果图像的0 <不透明度<100,则为黑色背景。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5005618.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存