我一直在寻找PHP代码将高斯模糊应用于图像。
我所做的就是这样:
<?php
$image = imagecreatefromjpeg('new.jpg');
imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);
imagejpeg($image, 'blur.jpeg');
imagedestroy($image);
?>
然而效果非常弱,如果我重复模糊效果,处理需要很长时间,最终结果仍然不太好。
我也使用过Timthumb,我总是喜欢它的简洁性,但它默认裁剪图像,其模糊效果非常弱。
答案 0 :(得分:7)
您可以使用ImageMagic
原始图片
通过exec
convert a.png -blur 0x3 a_blur.png
或运行
convert a.png -blur 0x8 a_blur.png
答案 1 :(得分:7)
也可以没有ImageMagic lib;
header('Content-Type: image/png');
$blurs = 10;
$image = imagecreatefrompng('blur.png');
for ($i = 0; $i < $blurs; $i++) {
imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);
}
imagepng($image, 'blur10.png');
imagedestroy($image);
应用10个模糊后;
答案 2 :(得分:0)