Rumah pembangunan bahagian belakang tutorial php 如何通过imagick让PHP生成PSD文件缩略图(实例)

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

Jan 21, 2020 pm 02:18 PM
imagick

ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过185种基本格式的图片文件,包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。利用ImageMagick,你可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。

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

通过imagick让PHP生成PSD文件缩略图

第一步、安装ImageMagick

首先需要安装 ImageMagick ,因为 imagick 是一个可以供 PHP 调用 ImageMagick 功能的PHP扩展。(目前最新版本是:ImageMagick-6.8.9-5-Q16-x64-dll.exe)

安装目录不能有空格,我个人是安装在 C 盘根目录:

C:\ImageMagick
Salin selepas log masuk

一路默认安装即可,安装完毕后打开 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
Salin selepas log masuk

保存退出后并重启电脑,确保生效。

如果未生效,则将压缩包里所有「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');
Salin selepas log masuk

以上代码已经经过测试可以正确生成出一张 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);
Salin selepas log masuk

更多php相关知识,请访问php教程

Atas ialah kandungan terperinci 如何通过imagick让PHP生成PSD文件缩略图(实例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Ketelusan imej melalui php dan Imagick Ketelusan imej melalui php dan Imagick Jul 29, 2023 am 09:45 AM

Pengenalan kepada ketelusan imej melalui PHP dan Imagick: Ketelusan imej ialah keperluan pemprosesan imej biasa Dengan menjadikan warna atau kawasan tertentu dalam imej telus, pelbagai kesan khas boleh dicapai. Artikel ini akan memperkenalkan cara menggunakan perpustakaan php dan Imagick untuk mencapai pemprosesan ketelusan imej, dan menyediakan contoh kod untuk rujukan. Imagick ialah perpustakaan pemprosesan imej yang berkuasa yang menyediakan pelbagai fungsi pemprosesan imej, termasuk membaca imej, mengedit, menyimpan, dsb. Dengan Imaginck kita

Amalan terbaik untuk mengubah saiz imej menggunakan php dan Imagic Amalan terbaik untuk mengubah saiz imej menggunakan php dan Imagic Jul 29, 2023 pm 05:57 PM

Amalan Terbaik untuk Mengubah Saiz Imej Menggunakan PHP dan Petikan Imagick: Dalam era Internet moden, imej adalah sebahagian daripada halaman web dan aplikasi. Untuk meningkatkan pengalaman pengguna dan mempercepatkan pemuatan halaman web, imej biasanya perlu diubah saiz untuk menyesuaikan diri dengan peranti paparan dan resolusi yang berbeza. Artikel ini akan memperkenalkan cara menggunakan php dan perpustakaan Imagick untuk melaksanakan amalan terbaik untuk saiz semula imej, dan menyediakan contoh kod. 1. Pasang sambungan Imagick Sebelum memulakan, kita perlu memastikan bahawa pelayan

Gunakan php dan Imagick untuk mencapai penukaran warna imej Gunakan php dan Imagick untuk mencapai penukaran warna imej Jul 29, 2023 pm 04:49 PM

Menggunakan PHP dan Imagick untuk merealisasikan penukaran warna imej Pengenalan: Dalam pembangunan web, kita selalunya perlu memproses imej, dan salah satu keperluan biasa ialah mengubah suai warna imej. Artikel ini akan memperkenalkan cara menggunakan sambungan PHP dan Imagick untuk mencapai penukaran warna imej. Imagick ialah sambungan pemprosesan imej yang berkuasa untuk PHP yang menyediakan banyak kaedah yang kaya dengan ciri, termasuk pemotongan imej, penskalaan, putaran dan banyak lagi. Dari segi penukaran warna, Imagick juga menyediakan satu siri kaedah untuk dicapai

Bagaimana untuk melaraskan warna imej menggunakan php dan Imagic Bagaimana untuk melaraskan warna imej menggunakan php dan Imagic Jul 28, 2023 pm 01:57 PM

Cara menggunakan PHP dan Imagick untuk melaraskan warna gambar Pengenalan: Dalam pembangunan web, kadangkala kita perlu melaraskan warna gambar untuk memenuhi keperluan reka bentuk atau mengoptimumkan kesan gambar. PHP menyediakan perpustakaan pemprosesan imej yang kaya, antaranya Imagick ialah sambungan yang berkuasa dan mudah digunakan yang boleh melaraskan warna gambar dengan mudah. Artikel ini akan memperkenalkan cara menggunakan PHP dan Imagick untuk merealisasikan pelarasan warna gambar, dan memberikan contoh kod yang sepadan. 1. Pasang sambungan Imagic: Untuk digunakan

Penajaman imej melalui php dan Imagic Penajaman imej melalui php dan Imagic Jul 29, 2023 pm 01:33 PM

Penajaman imej melalui php dan Imagick Dalam pemprosesan imej moden, penajaman ialah teknologi biasa, yang boleh meningkatkan butiran dan kejelasan imej serta menjadikannya lebih jelas. Dalam artikel ini, kami akan memperkenalkan cara menggunakan php dan perpustakaan Imagick untuk mencapai penajaman imej. Mula-mula, pastikan anda memasang pustaka Imagick pada pelayan anda. Jika ia tidak dipasang, anda boleh memasangnya dengan arahan berikut: sudoapt-getinstallphp-imagick

Gabungkan berbilang imej menjadi satu melalui php dan Imagick Gabungkan berbilang imej menjadi satu melalui php dan Imagick Jul 28, 2023 pm 08:39 PM

Menggabungkan berbilang imej menjadi satu melalui php dan Imagick Dalam pembangunan web, kadangkala kita perlu menggabungkan berbilang imej menjadi satu untuk memudahkan paparan dan menjimatkan masa memuatkan halaman. Dalam artikel ini, kami akan memperkenalkan cara menggunakan php dan perpustakaan Imagick untuk mencapai fungsi ini. Imagick ialah perpustakaan pemprosesan imej yang berkuasa yang menyediakan pelbagai kaedah dan fungsi pemprosesan imej. Pertama, kita perlu memasang sambungan Imagick dalam php. Seterusnya, kami akan menunjukkan cara menukar berbilang

Pemotongan dan penskalaan imej melalui php dan Imagick Pemotongan dan penskalaan imej melalui php dan Imagick Jul 28, 2023 pm 06:18 PM

Pemotongan dan penskalaan imej melalui PHP dan Imagic Ringkasan: Dalam pembangunan web, imej selalunya perlu dipangkas dan diskalakan untuk memenuhi pelbagai keperluan. Artikel ini akan memperkenalkan cara menggunakan PHP dan perpustakaan Imagick untuk mencapai pemangkasan dan penskalaan imej, serta menyediakan contoh kod untuk rujukan pembaca. Pengenalan: Dengan perkembangan pesat Internet, imej memainkan peranan yang semakin penting dalam halaman web. Walau bagaimanapun, memandangkan setiap halaman web mempunyai reka letak dan keperluan saiznya sendiri, imej selalunya perlu dipangkas dan diskalakan untuk menyesuaikan diri dengan senario yang berbeza. P

Mencapai kesan menghiris gambar melalui php dan Imagic Mencapai kesan menghiris gambar melalui php dan Imagic Jul 29, 2023 am 08:25 AM

Mencapai kesan penghirisan imej melalui PHP dan Imagick Dalam pembangunan web, pemprosesan imej adalah keperluan yang sangat biasa. Antaranya, kesan penghirisan gambar adalah kaedah pemprosesan yang sangat biasa. Dengan membahagikan imej besar kepada beberapa imej kecil, masa memuatkan imej boleh dikurangkan dengan berkesan dan kandungan imej boleh dipaparkan dengan lebih fleksibel. Artikel ini akan memperkenalkan cara menggunakan sambungan php dan Imagick untuk mencapai kesan penghirisan imej. Pertama, kita perlu memastikan bahawa php dan sambungan Imagick dipasang pada pelayan. jika tidak

See all articles