PHP Conference Japan 2024

Imagick::shadowImage

(PECL imagick 2, PECL imagick 3)

Imagick::shadowImage模擬影像陰影

描述

public Imagick::shadowImage(
    float $opacity,
    float $sigma,
    int $x,
    int $y
): bool

模擬影像陰影。

參數

opacity

sigma

x

y

回傳值

成功時回傳 true

範例

範例 #1 Imagick::shadowImage()

<?php
function shadowImage($imagePath) {
$imagick = new \Imagick(realpath($imagePath));
$imagick->shadowImage(0.4, 10, 50, 5);
header("Content-Type: image/jpg");
echo
$imagick->getImageBlob();
}

?>

新增註解

使用者貢獻的註解 1 則註解

nilayanand at gmail dot com
15 年前
<?php
/* 將影像讀取至物件 */
$im = new Imagick( 'a.jpg' );
$im->setImageFormat("png");

/* 讓影像稍微縮小,維持長寬比 */
$im->thumbnailImage( 200, null );

/* 複製目前的物件 */
$shadow = $im->clone();

/* 將影像背景顏色設定為黑色
(這是陰影的顏色) */
$shadow->setImageBackgroundColor( new ImagickPixel( 'black' ) );

/* 建立陰影 */
$shadow->shadowImage( 80, 3, 5, 5 );

/* Imagick::shadowImage 只會建立陰影。
這就是為什麼將原始影像疊合在陰影之上 */
$shadow->compositeImage( $im, Imagick::COMPOSITE_OVER, 0, 0 );

/* 顯示影像 */
header( "Content-Type: image/jpeg" );
echo
$shadow;
?>
To Top