Den*_*ink 26 php imagemagick imagick
我对图像处理知之甚少,甚至使用的术语也少,所以请耐心等待.
基本上,我想合并两个图像,其中一个将作为一个掩码.该图像看起来像这样:
蓝色和黄色背景在现实中都是透明的.
此图像用作常规照片的遮罩."伸出"圆圈的部分照片需要"裁剪"(变得不可见),同时内部仍然可见.
因此,蓝色区域中的所有内容都是隐形的,黄色区域中的所有内容都是可见的.
老实说,我不知道如何去做,所以任何帮助将不胜感激!
编辑:
我使用的是Imagick的API版本,而不是命令行版本
编辑:
为了了解我想要实现的目标,这里有一个例子.
输入图像因此:
这是掩模图像,始终相同
这是动态图片的一个例子
这就是最终结果应该是什么样子
use*_*016 65
所以,最后,这应该做你需要的:
原始图片:
不透明面膜:
覆盖:
输出:
代码:
<?php
$base = new Imagick('U0R4F.png');
$mask = new Imagick('mask.png');
$over = new Imagick('3ulkM.png');
// Setting same size for all images
$base->resizeImage(274, 275, Imagick::FILTER_LANCZOS, 1);
// Copy opacity mask
$base->compositeImage($mask, Imagick::COMPOSITE_DSTIN, 0, 0, Imagick::CHANNEL_ALPHA);
// Add overlay
$base->compositeImage($over, Imagick::COMPOSITE_DEFAULT, 0, 0);
$base->writeImage('output.png');
header("Content-Type: image/png");
echo $base;
?>
Run Code Online (Sandbox Code Playgroud)
我希望现在就是这样!注意:在您的示例中,您看起来缩小了基本图像,我没有(我的目标只是展示屏蔽是如何完成的).
归档时间: |
|
查看次数: |
25845 次 |
最近记录: |