加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 02:22:28 所属栏目:PHP教程 来源:网络整理
导读:《PHP中使用imagick生成PSD文件缩略图教程》要点: 本文介绍了PHP中使用imagick生成PSD文件缩略图教程,希望对您有用。如果有疑问,可以联系我们。 PHP教程 第一步、安装ImageMagick PHP教程 首先必要安装 ImageMagick http://imagemagick.org/script/binary

《PHP中使用imagick生成PSD文件缩略图教程》要点:
本文介绍了PHP中使用imagick生成PSD文件缩略图教程,希望对您有用。如果有疑问,可以联系我们。

PHP教程第一步、安装ImageMagick

PHP教程  首先必要安装 ImageMagick http://imagemagick.org/script/binary-releases.php#windows,因为 imagick 是一个可以供 PHP 调用 ImageMagick 功能的PHP扩展.(目前最新版本是:ImageMagick-6.8.9-5-Q16-x64-dll.exe)

PHP教程  安装目录不克不及有空格,我个人是安装在 C 盘根目录:

代码如下:

C:ImageMagick

  一路默认安装即可,安装完毕后打开 CMD 命令行界面,输入:convert,并按回车,如果能看到一大堆的内容则表示安装成功.

PHP教程  如果提示“ convert 不是内部或外部命令,也不是可运行的程序或批处理文件”或者提示“请输入转换的盘符”( convert 是一个默认的将 FAT32 转换到 NTFS 的系统命令)那么你需要本身将 ImageMagick 的安装路径添加到系统路径.

PHP教程  我的电脑 -> 单击右键 -> 属性 -> 高级 -> 环境变量 -> 系统变量 -> 找到“Path” -> 选中并点击进行编纂 -> 把你的安装路径添加进去.

PHP教程第二步、安装imagick

PHP教程  点击这里下载,注意下载的时候要下对应的 PHP 版本,同时注意系统是32位还是64位,以及 PHP 是 NTS 版还是 TS 版(目前最新稳定版是 3.1.2,关于如何判断 PHP 是 NTS 版还是 TS 版,可通过 phpinfo 查看其中的 Thread Safety 项,如果是 enabled 就代表是 TS 版,否之则便是 NTS 版)

PHP教程  将下载的压缩包解压,找到 php_imagick.dll 文件,把它放到 PHP 的扩展目录里,然后打开 php.ini 文件,在对应的地位添加以下一行:

代码如下:

extension=php_imagick.dll

  保留退出后并重启电脑,确保生效.

PHP教程第三步、检查

PHP教程  假如一切正常,重启后在 phpinfo 里应该能看到 imagick 项,如:

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

PHP教程如果找不到,则返回第一步,更换分歧版本的 ImageMagick 重新安装并重新调试.

PHP教程第四步、测试

PHP教程  OK,到这一步可以开始编写代码了,进程就不细说了,直接上代码

代码如下:

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 的图片.

PHP教程 建议缩略图还是以 jpg 格式,因为 png 格式不支持压缩,我在测试的时候使用 30M 的 PSD 文件,生成出来的 png 缩略图有 3M 多,而 jpg 只有 200KB 左右,并且生成 png 图片的速度明显很慢,大概必要3,4秒.

PHP教程  另外还做了极端测试,用了一近 600M 的 PSD 文件生成 jpg 缩略图,速度基本在2秒内,文件大小不到 2.5M,由于并未对图片进行尺寸的修改,所以最毕生成文件的体积可以根据实际情况再减小.

PHP教程第五步、其它格局

PHP教程  除了 PSD 文件,我还另外尝试了一些其它格式,比如 MP4 、AVI 等视频格式,但生成速度超级慢.最后发现比拟实用的就是生成 PDF 文件的缩略图,但处理 PDF 文件前,需要安装 Ghostscript,然后整体的代码基本和生成 PSD 的代码一样

代码以下:

$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);

欢迎参与《PHP中使用imagick生成PSD文件缩略图教程》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读