【发布时间】:2017-12-06 09:47:53
【问题描述】:
我需要将 JPG 图像转换为 PNG 并将其白色背景更改为透明。我正在使用 ImageMagick.NET,我发现以下 ImageMagick 命令应该可以实现我想要实现的目标:
convert image.jpg -fuzz XX% -transparent white result.png
我尝试将其转换为 c#,但我得到的只是一个白色背景的 png 图像。我的代码sn-p:
using (var img = new MagickImage("image.jpg"))
{
img.Format = MagickFormat.Png;
img.BackgroundColor = MagickColors.White;
img.ColorFuzz = new Percentage(10);
img.BackgroundColor = MagickColors.None;
img.Write("image.png");
}
我们将不胜感激任何形式的帮助。谢谢!!
【问题讨论】:
-
img.BackgroundColor = MagickColors.White;你不能用MagickColours.Transparent代替吗? (如果存在) -
两次使用BackgroundColor有意义吗?首先是 MagickColors.White,然后是 MagickColors.None?
-
非常感谢您的建议。它确实存在。 MagickColors.Transparent 将 RGBA 值设置为 #FFFFFF00。尝试用
MagickColours.Transparent替换MagickColors.White并删除BackgroundColor 的第二个实例,但它仍然给我相同的结果。具有白色背景的 PNG 图像...
标签: c# uwp imagemagick magick.net imagemagick.net