查了下,原来是php.ini里的memory_limit = 8M 这里设置过小。(但奇怪,本地 PHP.INI和服务器的php.ini也是这样设置,但本地的没问题,真奇怪),于是只能在程序中,用ini_set("memory_limit","20M");来设置,果然能够解决问题。
再看了下资料,发现有个叫imageMagick的听说比gdlibary更好,GOOGLE了一下,果然发现不少介绍的文章,还有效果介绍:
ImageMagick是一套稳定的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。利用ImageMagick,你可以根据web应用程序的需要动态生成图片, 还可以对一个图片或图片序列进行改变大小、旋转、锐化、减色或增加特效,并将操作的结果以相同格式或其它格式保存。对图片的操作,可以通过命令行进行,也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。同时ImageMagick提供了一个高质量的2D工具包,部分地支持SVG。现在,ImageMagic的主要精力集中在性能、减少bug以及提供稳定的API和ABI上。
ImageMagick功能强大,却免费的。
ImageMagick 與 GD Library 縮圖比較 (http://www.neo.com.tw/archives/000293.html)
ImageMagick学习(http://hedong.3322.org/archives/000339.html)
利用imagemagick來作縮圖 (http://www.php5.idv.tw/modules.php?mod=books&act=show&shid=912)
最重要的是,听说imagemagick来生成缩略图,不会出现象GD那样的内存问题。那得赶紧去试下了,呵呵