覆盖图像

9 imagemagick image-manipulation

我有两张照片(1.jpg 和 2.jpg)我想将照片 2.jpg 作为背景,将照片 1.jpg 设为红色叠加,并且我希望输出像照片 3.jpg 一样如下(我想要将照片编号 1 放在照片编号 2 的顶部并使其透明 50%):

照片1.jpg(叠加) 在此处输入图片说明

照片2.jpg(背景) 在此处输入图片说明

照片3.jpg(最终输出) 在此处输入图片说明

我尝试了命令转换和合成(ImageMagick 的一部分,但经过多次尝试,我未能找出我应该使用的正确标志)

Max*_*rok 12

composite -blend 30 1.jpg 2.jpg res.jpg会做的工作。我使用了你的图片,结果如下:

资源.jpg

如果你想让第一张图片的不透明度或多或少,你应该将-blend参数从 0修改为 100(-blend 0你的 1.jpg 将是透明的,所以结果将与原始 2.jpg 相同。-blend 100结果将与 1 相同。 jpg。所以-blend 50你会得到两个图像的平均不透明度)

composite -blend {{OPACITY_OF_1.JPG}} 1.jpg 2.jpg result.jpg

  • @goro,是的,你可以这样做。`convert 2.jpg 1.jpg -compose blend -define compose:args=30 -composite -set option:modulate:colorspace hsb -modulate 100,100,{{HUE_ROTATION_ANGLE}} result.jpg`。“hue 参数导致图像中颜色按指定的量“旋转”。例如,50 导致逆时针旋转 90,将红色阴影映射到紫色,等等......“在此处了解更多信息: [imagemagick.org/script/command-line-options.php#modulate](http://www.imagemagick.org/script/command-line-options.php#modulate) (2认同)