Black background (instead of transparent) after drop shadow in ImageMagick
我正在尝试为两个图像的组合添加阴影:一个JPEG / PNG和一个SVG矢量。有了PNG图像,一切都可以无缝运行。现在,尝试使用JPEG,我得到的是黑色背景,而不是预期的透明背景。
该命令如下所示:
我们从JPEG开始:
或此PNG:
然后,我们合成矢量,因为它是白色的,所以您将看不到原始图像,因此这里是下面的网格:
真正的向量是这个:http://cl.ly/Xymi/vector.svg
然后我们放下阴影。从PNG开始,我们正确了(透明背景):
但使用JPEG时,背景改为黑色:
可以在这里以ZIP格式下载所有文件:http://cl.ly/Xz8V/Archive%202014-10-10%20at%2011.34.55%20am.zip
对可能发生的事情有任何想法吗?提前致谢!!
编辑:
我的IM版本:
1 2 3 4 | Version: ImageMagick 6.8.8-9 Q16 x86_64 2014-03-28 http://www.imagemagick.org Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC Features: DPC Modules Delegates: bzlib freetype jng jpeg lcms ltdl png tiff xml zlib |
我正在Mac OSX上进行开发。
好的问题解决了! snibgo在ImageMagick论坛上为我提供了帮助。
即使我们无法理解我的设置与其他尝试并没有发现问题的人员之间的区别,我们还是将命令的阴影部分重构为一种更正确的方式,实际上对两个来源都适用 ,jpeg和png:
1 2 3 4 5 6 | convert image.jpeg -background white -flatten \\ \\( -background none vector.svg \\) \\ -compose CopyOpacity -gravity center -composite \\ \\( +clone -background \\#111 -shadow 80x5+5+5 \\) +swap -background None -compose Over -layers merge \\ # This is new correct_output.png |
整个讨论可以在这里找到:
http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=26363