(PECL imagick 2 >= 2.3.0, PECL imagick 3)
Imagick::setImageClipMask — Sets image clip mask
此函数在 Imagick 3.4.4 中被 废弃,强烈建议不要应用此函数。
Sets image clip mask from another Imagick object. 此方法在Imagick基于ImageMagick 6.3.6以上版本编译时可用。
clip_mask
The Imagick object containing the clip mask
成功时返回 true
。
错误时抛出 ImagickException。
Example #1 Imagick::setImageClipMask()
<?php
function setImageClipMask($imagePath) {
$imagick = new \Imagick();
$imagick->readImage(realpath($imagePath));
$width = $imagick->getImageWidth();
$height = $imagick->getImageHeight();
$clipMask = new \Imagick();
$clipMask->newPseudoImage(
$width,
$height,
"canvas:transparent"
);
$draw = new \ImagickDraw();
$draw->setFillColor('white');
$draw->circle(
$width / 2,
$height / 2,
($width / 2) + ($width / 4),
$height / 2
);
$clipMask->drawImage($draw);
$imagick->setImageClipMask($clipMask);
$imagick->negateImage(false);
$imagick->setFormat("png");
header("Content-Type: image/png");
echo $imagick->getImagesBlob();
}
?>