我要写一个缩略图创建功能
我可以使用Imagemagick& GD图书馆方法。
哪种方法可以创建更好的缩略图,并且对服务器(加载,...)更快更好?
由于
答案 0 :(得分:2)
根据我的经验,我认为ImageMagick可以提供更好的质量。 众所周知,ImageMagick更快,特别是如果你通过命令行使用它(或PHP exec(“转换...”)(例如参见this benchmark)
关于质量,我在SO:How to stop GD2 from washing away the colors upon resizing images?
中找到了这个答案 1 :(得分:2)
尝试了两个并发现ImageMagick更好但最后我选择了两个并改为使用GraphicsMagick。
GraphicsMagick最初源自ImageMagick 5.5.2,截至2002年11月,但从那时起完全独立于ImageMagick项目。由于来自ImageMagick的分支,许多作者使用开放式开发模型进行了许多改进(参见NEWS),但没有破坏API或实用程序操作。
- GM效率更高,因此可以使用更少的资源更快地完成工作。
- GM更小更紧凑(安装占地面积减少3-5倍)。
- GM用于处理世界上最大的照片网站(例如Flickr和Etsy)的数十亿个文件。
- GM与其他已安装的软件不冲突。
- GM遭受的安全问题和漏洞利用较少。
- GM valgrind的100%清洁(memcheck和helgrind)。
还..
答案 2 :(得分:1)
$im = imagecreatefromjpeg('photo.jpg');
$ox = imagesx($im);
$oy = imagesy($im);
$nx = 320;
$ny = 240;
$nm = imagecreatetruecolor($nx, $ny);
imagecopyresized($nm,$im,0,0,0,0,$nx,$ny,$ox,$oy);
imagejpeg($nm, 't_photo.jpg');
VS
exec('convert photo.jpg -resize 320x240 t_photo.jpg');
您怎么看?
此外,每个好的缩略图都应该有点尖锐......
exec('convert photo.jpg -resize 320x240 -unsharp 1.5×1.0+1.5+0.02 t_photo.jpg');
http://net.tutsplus.com/tutorials/php/create-instagram-filters-with-php/