Windows 如何为动画GIF添加水印并将2个ImageMagick命令组合在一起?

Windows 如何为动画GIF添加水印并将2个ImageMagick命令组合在一起?,windows,image,image-processing,imagemagick,Windows,Image,Image Processing,Imagemagick,我使用命令行中的imagemagick在Windows7计算机上运行 以下代码用于向图像添加水印: composite \ -watermark 30% \ -gravity south \ the_watermark.png \ pic_to_be_watermaked.png \ watermark_completed.png 问题是:

我使用命令行中的imagemagick在Windows7计算机上运行

以下代码用于向图像添加水印:

composite                      \
     -watermark 30%            \
     -gravity south            \
      the_watermark.png        \
      pic_to_be_watermaked.png \
      watermark_completed.png
问题是:

  • 当我尝试为动画GIF添加水印时,它不起作用
  • 如何将此水印命令与下面的命令结合使用
此命令获取文件夹“static_images”中的所有PNG,并将它们组合成动画GIF。它还确保图像的宽度为350px,高度保持在适当的纵横比。它还会给图像一些模糊,并将动画的速度设置为4,并确保无限循环:

convert                         \
   -resize 350x350              \
   -fuzz 1.6%                   \
   -delay 4                     \
   -loop 0                      \
    static_images/*.png         \
   -layers OptimizePlus         \
   -layers OptimizeTransparency \
    animated_gif.gif
问题:
  • 如何将水印命令与上面的命令相结合
  • 如何获得水印命令并使用动画GIF

  • 这是你想看到的结果吗

    诀窍是首先为每个PNG源文件添加水印,然后从带水印的PNG创建GIF

    这是这两个命令的结果。首先,创建带水印的PNG:

    for i in sample_images/000*.png; do   
       convert                                     \
          "${i}"                                   \
          sample_images/the_watermark.png          \
         -gravity south                            \
         -composite                                \
          sample_images/$(basename "${i}")_wm.png;
    done
    
    注意,我没有使用您的确切的
    composite
    命令,因为它没有创建可读的水印,只是在指定区域上有一些模糊

    其次,将带水印的PNG转换为动画GIF:

    convert                         \
       -resize 350x350              \
       -fuzz 1.6%                   \
       -delay 4                     \
       -loop 0                      \
        sample_images/*_wm.png      \
       -layers OptimizePlus         \
       -layers OptimizeTransparency \
        animated_gif.gif      
    

    这就是你想做的吗?

    这就是你想看到的结果吗

    诀窍是首先为每个PNG源文件添加水印,然后从带水印的PNG创建GIF

    这是这两个命令的结果。首先,创建带水印的PNG:

    for i in sample_images/000*.png; do   
       convert                                     \
          "${i}"                                   \
          sample_images/the_watermark.png          \
         -gravity south                            \
         -composite                                \
          sample_images/$(basename "${i}")_wm.png;
    done
    
    注意,我没有使用您的确切的
    composite
    命令,因为它没有创建可读的水印,只是在指定区域上有一些模糊

    其次,将带水印的PNG转换为动画GIF:

    convert                         \
       -resize 350x350              \
       -fuzz 1.6%                   \
       -delay 4                     \
       -loop 0                      \
        sample_images/*_wm.png      \
       -layers OptimizePlus         \
       -layers OptimizeTransparency \
        animated_gif.gif      
    

    这就是你想要做的吗?

    另外,在告诉你的操作系统之后,了解
    convert-version
    的(完整)输出也是很有趣的……如果你在问题中提供(链接到)你的示例图像,你将极大地增加获得有用答案的机会(例如从我这里)。(我知道怎么做,但我现在缺少测试图像——你不能指望我创建一些来回答这个问题……@Kurt Pfeifle输出是
    版本:ImageMagick 6.7.9-1 2012-08-21http://www.imagemagick.org 版权所有…
    @Kurt Pfeifle我在本地主机上运行它,它不是一个web服务,而是web编辑器为我们的站点生成GIF内容的一种方式。我在这里上传了相同的图片:。这些是视频中的PNG帧。这是完整版本的字符串?!在
    功能之后确实有一行空行:
    ??另外,
    localhost
    不是操作系统(OS)。。。您是在Linux、Windows、Mac还是其他平台上运行此功能?另外,在告诉您的操作系统后,了解
    convert-version
    的(完整)输出也很有趣。如果您在问题中提供(指向)示例图像的链接,您将极大地增加获得有用答案的机会(例如从我这里)。(我知道怎么做,但我现在缺少测试图像——你不能指望我创建一些来回答这个问题……@Kurt Pfeifle输出是
    版本:ImageMagick 6.7.9-1 2012-08-21http://www.imagemagick.org 版权所有…
    @Kurt Pfeifle我在本地主机上运行它,它不是一个web服务,而是web编辑器为我们的站点生成GIF内容的一种方式。我在这里上传了相同的图片:。这些是视频中的PNG帧。这是完整版本的字符串?!在
    功能之后确实有一行空行:
    ??另外,
    localhost
    不是操作系统(OS)。。。你是在Linux、Windows、Mac还是Linux上运行这个程序?我喜欢你的文件大小原来是如此之小!我喜欢你的文件大小原来是多么小!