imagemagick 水印 gif 时候遇到的问题(内详有图)

2017-01-18 09:31:48 +08:00
 makeitall


如图

命令是:
convert -coalesce name.gif -gravity SouthEast -draw "Image Over 0,0 0,0 watermark.png" output.gif

测试源文件:



求解决办法,谢谢
3338 次点击
所在节点    程序员
11 条回复
imn1
2017-01-18 09:50:39 +08:00
效果很好,看这猫被水印吓的翻了个身
wxg4net
2017-01-18 10:07:32 +08:00
convert -coalesce name.gif -gravity SouthEast -geometry +0+0 null: watermark.png -layers composite -layers optimize output.gif
makeitall
2017-01-18 12:09:03 +08:00
@imn1 哈哈哈,有趣
@wxg4net 大神好厉害。。。话说这个是什么原理?
banxi1988
2017-01-18 13:42:47 +08:00
@makeitall 应该是 Gif 是由多个图层组成.加水印的也要加在各个图层上.
如果在 Mac 上使用 预览应用打开 Gif 图的话,它会在左右列出组成的各个图层.
makeitall
2017-01-18 13:54:57 +08:00
@banxi1988 为什么原来的代码就不行呢
makeitall
2017-01-18 13:57:46 +08:00
@banxi1988 补充一下,忘了说了,只有一部分 gif 会出现这种情况,还有别的都是很正常的打上了水印,如果是图层的话应该是因为有的图层比较小。只是不知道这两个命令的原理区别。
TaMud
2017-01-18 14:33:17 +08:00
gif 分帧,再上水印,再合并
songz
2017-01-18 14:53:27 +08:00
源文件画质很差啊,楼主处理过的感觉更好,除了那个水印
gdsagdada
2017-01-18 18:11:45 +08:00
可能因为 gif 帧大小不一样
wxg4net
2017-01-19 08:40:27 +08:00
@gdsagdada ” gif 帧大小不一样“ 正解。这会导致水印位置漂浮不定 又加上透明。 换个图层合成方式就好了
sighforever
2017-01-19 15:08:47 +08:00
@imn1 哈哈哈哈

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/335293

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX