如何解决转换为png时如何更改图像中的单一颜色?
目标:将图标(单色、黑色、透明背景)从 svg 或 xcf 转换为 png 并更改图标的颜色(例如,黑色变为白色或指定的十六进制颜色)。
ImageMagick 版本: 7.0.11-6
我取得了一些成功,但发现
- col- 文件不能都是一种颜色(我想要的颜色),否则整个新的 png 也只是块颜色。
- 如果 col- 文件是具有我想要的颜色和透明背景的 png,则它适用于深色,但较浅的颜色最终会在边缘模糊。
- -remap 不适用于 svg 源文件,并且使用 -fill 和十六进制值会使创建的所有 png 图像变得模糊。
有没有更好的方法来为这些 png 重新着色?还是一种阻止模糊的方法? 我刚刚开始使用 ImageMagick。非常感谢!
当前批处理文件
@echo off
set resolution=72
set width=48
setlocal enableDelayedExpansion
for %%i in (*.xcf) do (
echo Converting [ %%i --^> %%~ni.png ] ^(%width%@%resolution%^)
for %%x in (os-col-*.*) do (
magick %%i -resize %width% -resample %resolution% -remap %%x %%~ni-%width%-%%x.png
echo Done %%i - %%x
)
echo Done %%i
)
黑色 png,无模糊
应用了 -remap 的 png 模糊
解决方法
使用 ImageMagick,如果您的输入是单一颜色并且您想在保持透明度的同时将其更改为另一种颜色,则此命令应该完全做到这一点...
convert input.png -fill #75965b -colorize 100 result.png
创建此输出图像....
这是 IMv6 语法。对于 IMv7,请使用“magick”而不是“convert”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。