源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

PHP中使用imagick生成PSD文件缩略图教程

  • 时间:2020-04-06 12:33 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:PHP中使用imagick生成PSD文件缩略图教程
[b]第一步、安装ImageMagick[/b]   首先需要安装 ImageMagick [url=http://imagemagick.org/script/binary-releases.php#windows]http://imagemagick.org/script/binary-releases.php#windows[/url],因为 imagick 是一个可以供 PHP 调用 ImageMagick 功能的PHP扩展。(目前最新版本是:ImageMagick-6.8.9-5-Q16-x64-dll.exe)   安装目录不能有空格,我个人是安装在 C 盘根目录:
[url=http://pecl.php.net/package/imagick]点击这里下载[/url],注意下载的时候要下对应的 PHP 版本,同时注意系统是32位还是64位,以及 PHP 是 NTS 版还是 TS 版(目前最新稳定版是 3.1.2 ,关于如何判断 PHP 是 NTS 版还是 TS 版,可通过 phpinfo 查看其中的 Thread Safety 项,如果是 enabled 就代表是 TS 版,否之则就是 NTS 版)   将下载的压缩包解压,找到 php_imagick.dll 文件,把它放到 PHP 的扩展目录里,然后打开 php.ini 文件,在对应的位置添加以下一行:
[u]复制代码[/u] 代码如下:
extension=php_imagick.dll
  保存退出后并重启电脑,确保生效。 [b]第三步、检查[/b]   如果一切正常,重启后在 phpinfo 里应该能看到 imagick 项,如: [img]http://files.jb51.net/file_images/article/201501/201512691833233.jpg?201502691843[/img] 如果找不到,则返回第一步,更换不同版本的 ImageMagick 重新安装并重新调试。 [b]第四步、测试[/b]   OK,到这一步可以开始编写代码了,过程就不细说了,直接上代码
[u]复制代码[/u] 代码如下:
error_reporting(E_ERROR | E_WARNING);   $im = new Imagick('1.psd'); $im->setImageIndex(0); $im->setIteratorIndex(0); $im->stripImage(); //去除图片信息 $im->setImageCompressionQuality(80); //图片质量 $im->writeImage('1.jpg');
  以上代码已经经过测试可以正确生成出一张 1.jpg 的图片。  建议缩略图还是以 jpg 格式,因为 png 格式不支持压缩,我在测试的时候使用 30M 的 PSD 文件,生成出来的 png 缩略图有 3M 多,而 jpg 只有 200KB 左右,并且生成 png 图片的速度明显很慢,大概需要3,4秒。   另外还做了极端测试,用了一近 600M 的 PSD 文件生成 jpg 缩略图,速度基本在2秒内,文件大小不到 2.5M ,由于并未对图片进行尺寸的修改,所以最终生成文件的体积可以根据实际情况再减小。 [b]第五步、其它格式[/b]   除了 PSD 文件,我还另外尝试了一些其它格式,比如 MP4 、AVI 等视频格式,但生成速度超级慢。最后发现比较实用的就是生成 PDF 文件的缩略图,但处理 PDF 文件前,需要安装 Ghostscript ,然后整体的代码基本和生成 PSD 的代码一样
[u]复制代码[/u] 代码如下:
$im = new Imagick(); $im->readImage('D:/soft/wamp/www/test/1.pdf[0]'); //echo $im->getNumberImages(); $im->writeImages('D:/soft/wamp/www/test/1.jpg', false);
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部