如何通过imagick让PHP生成PSD文件缩略图(实例)-php教程

资源魔 36 0
ImageMagick是一套性能弱小、稳固并且收费的对象集以及开发包,能够用来读、写以及解决超越185种根本格局的图片文件,包罗盛行的TIFF, JPEG, GIF, PNG, PDF和PhotoCD等格局。行使ImageMagick,你能够依据web使用顺序的需求静态天生图片, 还能够对一个(或一组)图片进行扭转巨细、旋转、锐化、增色或添加殊效等操作,并将操作的后果以相反格局或其它格局保留。

经过imagick让PHP天生PSD文件缩略图

第一步、装置ImageMagick

起首需求装置 ImageMagick ,由于 imagick 是一个能够供 PHP 挪用 ImageMagick 性能的PHP扩大。(今朝最新版本是:ImageMagick-6.8.9-5-Q16-x64-dll.exe)

装置目次不克不及有空格,我集体是装置正在 C 盘根目次:

C:\ImageMagick

一路默许装置便可,装置终了后关上 CMD 饬令行界面,输出:convert ,并按回车,假如能看到一年夜堆的内容则示意装置胜利。

假如提醒“ convert 没有是外部或内部饬令,也没有是可运转的顺序或批解决文件”或许提醒“请输出转换的盘符”( convert 是一个默许的将 FAT32 转换到 NTFS 的零碎饬令)那末你需求本人将 ImageMagick 的装置门路增加到零碎门路。

我的电脑 -> 单击右键 -> 属性 -> 初级 -> 环境变量 -> 零碎变量 -> 找到“Path” -> 选中并点击进行编纂 -> 把你的装置门路增加出来。

第二步、装置imagick

点击这里下载,留意下载的时分要下对应的 PHP 版本,同时留意零碎是32位仍是64位,和 PHP 是 NTS 版仍是 TS 版(今朝最新稳固版是 3.1.2 ,对于若何判别 PHP 是 NTS 版仍是 TS 版,可经过 phpinfo 查看此中的 Thread Safety 项,假如是 enabled 就代表是 TS 版,否之则就是 NTS 版)

将下载的紧缩包解压,找到 php_imagick.dll 文件,把它放到 PHP 的扩大目次里,而后关上 php.ini 文件,正在对应的地位增加如下一行:

extension=php_imagick.dll

保留加入后并重启电脑,确保失效。

假如未失效,则将紧缩包里一切「CORE_RL_*.dll」文件复制到 php 根目次,如:D:\php5.6

第三步、反省

假如所有失常,重启后正在 phpinfo 里应该能看到 imagick 项,如:

假如找没有到,则前往第一步,改换没有同版本的 ImageMagick 从新装置并从新调试。

第四步、测试

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

倡议缩略图仍是以 jpg 格局,由于 png 格局没有支持紧缩,我正在测试的时分应用 30M 的 PSD 文件,天生进去的 png 缩略图有 3M 多,而 jpg 只有 200KB 阁下,而且天生 png 图片的速率显著很慢,大略需求3,4秒。

另外还做了极其测试,用了一近 600M 的 PSD 文件天生 jpg 缩略图,速率根本正在2秒内,文件巨细没有到 2.5M ,因为并未对图片进行尺寸的修正,以是终极天生文件的体积能够依据实际状况再减小。

第五步、其它格局

除了了 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相干常识,请拜访php教程!

以上就是若何经过imagick让PHP天生PSD文件缩略图(实例)的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 Imagick

抱歉,评论功能暂时关闭!