函式名:Imagick::shadeImage()
適用版本:Imagick 2.0.0 及以上版本
函式說明:Imagick::shadeImage() 方法用於透過新增陰影效果來改變影象的亮度和飽和度。該方法將影象中的每個畫素進行處理,並根據指定的光照角度和陰影顏色進行著色。
用法:
bool Imagick::shadeImage ( bool $gray , float $azimuth , float $elevation )
引數:
$gray
(可選):指定是否將影象轉換為灰度影象。預設值為 false。$azimuth
:光照角度,範圍為 0 到 360 度。$elevation
:光照高度角度,範圍為 0 到 90 度。
返回值:
- 成功時返回 true,失敗時返回 false。
示例:
// 建立一個 Imagick 物件並讀取影象
$image = new Imagick('path/to/image.jpg');
// 新增陰影效果
$gray = false; // 不轉換為灰度影象
$azimuth = 45; // 光照角度為 45 度
$elevation = 30; // 光照高度角度為 30 度
$image->shadeImage($gray, $azimuth, $elevation);
// 顯示或儲存處理後的影象
header('Content-Type: image/jpeg');
echo $image;
// 儲存影象
$image->writeImage('path/to/output.jpg');
注意事項:
- 在使用該方法之前,需要確保已經安裝了 Imagick 擴充套件。
- 該方法會直接修改原始影象,如果需要保留原始影象,建議先建立副本進行操作。
- 光照角度和高度角度的取值範圍需要根據實際需求進行調整,以獲得期望的陰影效果。
- 可以使用其他 Imagick 方法對影象進行進一步處理,以實現更復雜的效果。