首頁 >後端開發 >php教程 >如何呼叫php imagemagick來實現舊照片效果

如何呼叫php imagemagick來實現舊照片效果

jacklove
jacklove原創
2018-06-08 18:19:091737瀏覽

imagemagick是圖片處理軟體,具有強大的圖片處理能力。本文使用php呼叫imagemagick實作把圖片處理為老照片效果。 imagemagick位址:www.imagemagick.org 

需要安裝imagemagick,安裝方法如下:點擊查看
使用imagemagick產生舊照片效果,需要執行下面幾個步驟
1 .將輸入影像使用sepia-tone濾鏡處理
2.產生一個白色蒙版,填充隨機噪聲,轉化為灰度,並加上alpha通道
3.將步驟1和步驟2的結果使用overlay的方式compose
程式碼如下:

<?php/**
 * php 调用imagemagick实现老照片效果 
 * Date:    2016-12-31
 * Author:  fdipzone
 * Ver:     1.0
 *//**
 * 调用imagemagick实现老照片效果
 * @param String $source 原图
 * @param String $dest   目的图
 */function createOldPhoto($source, $dest){
    // 命令行
    $cmd = sprintf("convert &#39;%s&#39; -sepia-tone &#39;75%%&#39; \( &#39;%s&#39; -fill &#39;#FFFFFF&#39; -colorize &#39;100%%&#39; +noise Random -colorspace gray -alpha on -channel A -evaluate Set 100 \) -compose overlay -composite &#39;%s&#39;", $source, $source, $dest);    // 执行命令
    exec($cmd);
}// 原图$source = dirname(__FILE__).&#39;/source.jpg&#39;;// 生成效果图$dest = dirname(__FILE__).&#39;/dest.jpg&#39;;// 创建效果图createOldPhoto($source, $dest);// 显示原图与效果图比较echo &#39;<meta http-equiv="content-type" content="text/html;charset=utf-8">&#39;;echo &#39;<p>原图</p>&#39;;echo &#39;<p><img  src="&#39;.basename($source).&#39;" alt="如何呼叫php imagemagick來實現舊照片效果" ></p>&#39;;echo &#39;<p>效果图</p>&#39;;echo &#39;<p><img  src="&#39;.basename($dest).&#39;" alt="如何呼叫php imagemagick來實現舊照片效果" ></p>&#39;;?>


#原圖與產生的舊照片效果比較

如何呼叫php imagemagick來實現舊照片效果






############### #########imagemagick###是圖片處理軟體,具有強大的圖片處理能力。本文使用php呼叫imagemagick實作把圖片處理為老照片效果。 ###imagemagick位址:www.imagemagick.org ###需要安裝imagemagick,安裝方法如下:點擊查看 ###本篇文章講解了php imagemagick來實現舊照片效果,更多相關內容關注php中文網。 ######相關推薦:#########關於php 計算多個集合的笛卡爾積講解############關於php檔案包含目錄配置open_basedir的使用與效能分析############關於ajax跨網域存取cookie遺失的解決方法的解說############

以上是如何呼叫php imagemagick來實現舊照片效果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn