亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在PHP中利用imagick生成一個PSD文件縮略圖

發布時間:2020-12-22 14:51:46 來源:億速云 閱讀:195 作者:Leah 欄目:開發技術

如何在PHP中利用imagick生成一個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


  保存退出后并重啟電腦,確保生效。

第三步、檢查

  如果一切正常,重啟后在 phpinfo 里應該能看到 imagick 項,如:

如何在PHP中利用imagick生成一個PSD文件縮略圖

如果找不到,則返回第一步,更換不同版本的 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中利用imagick生成一個PSD文件縮略圖的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平湖市| 会泽县| 旺苍县| 卢龙县| 平顶山市| 东至县| 大洼县| 买车| 凤冈县| 兴城市| 平昌县| 东宁县| 江陵县| 丹棱县| 深泽县| 襄城县| 仁怀市| 吴堡县| 寿阳县| 嘉兴市| 凤凰县| 团风县| 蕲春县| 扶绥县| 平阴县| 利津县| 陈巴尔虎旗| 石首市| 中山市| 西华县| 寿宁县| 承德县| 琼结县| 永顺县| 万荣县| 沙雅县| 渭南市| 怀宁县| 鄂伦春自治旗| 崇礼县| 巧家县|