用于合并图像、批量应用颜色、黑白滤镜的应用程序/脚本?

问题描述

我正在为我的游戏取得成就,我想制作一个自动化流程以节省大量时间,而不是手动完成。 (我使用的是 Windows)

这个过程的输入

  • 一张矩形不透明背景图片(即 200x200 PNG)

  • 颜色 A,(即十六进制)

  • 颜色 B,(即十六进制)

  • 多个相同大小的矩形透明前景图像。 (即 200x200 PNG)

并且过程会对每个前景图像执行此操作:

  1. 从背景开始图像。

  2. 应用颜色 A 过滤器合并前景图像,并且从中间偏移

  3. 中间合并应用B色滤镜的前景图像。

  4. 将结果保存在文件

  5. 应用黑白滤镜并将结果保存在文件

例如,输出将是多个 200x200 PNG 图像,每个图像都有彩色和黑白版本

我认为必须有一个应用程序能够做到这一点。

但如果没有,有没有办法在某些编程/脚本语言(例如 Python)中快速执行此操作?

解决方法

这是您可以期待的最好结果,无需提供任何图片或预期结果。我使用以下作为背景,图像 A 和图像 B:

enter image description here enter image description here enter image description here

然后使用 ImageMagick,像这样:

magick background.png -gravity center \
   \( a.png -fill "#ff00ff" -tint 70% -resize 64x64   -geometry -30-40 \) -composite \
   \( b.png -fill "#00ff00" -tint 85% -resize 100x100 -geometry +0+0   \) -composite \
   -write coloured.png \
   -colorspace gray grey.png

你会得到:

enter image description here enter image description here

如果使用 Windows,您需要:

  • 将行尾的任何 \ 替换为脱字符 ^
  • 在左括号和右括号 \( 之前删除任何 )
  • 将任何单引号更改为双引号
  • 使用 Microsoft 的一些神秘规则来处理任何 % 标志,将它们加倍以确保它确实按照您在批处理文件中的要求执行。