我正在尝试将任何颜色空间中的任何图像的边框颜色设置为白色。现在我正在做一些像这样的事情,
if (image.ColorSpace == ColorSpace.CMYK)
image.BorderColor = new MagickColor(0, 0, 0, 0, 0); // Set border color as white (CMYK)
else
image.BorderColor = new MagickColor("#FFFFFF"); // Set border color as white (RGB)但这似乎并不全面,因为在这种情况下,我们需要查看其他颜色空间,看看它们是否也适合这个颜色空间。
我遇到了一个问题,其中一个图像将colorspace作为Lab,上面的代码产生红色边框。因此,我正在寻找一种简单的方法来做到这一点。
在这方面的任何帮助都将非常感谢。
发布于 2017-02-02 15:31:02
多亏了@emcconville,我才能得到一个更简单的解决方案。
MagickColor类接受X11颜色名称作为参数,因此我们可以使用
image.BorderColor = new MagickColor("WHITE");这会将边框颜色设置为白色,而与ColorSpace无关。
对于那些想知道X11颜色名称是什么的人,https://en.wikipedia.org/wiki/X11_color_names。
https://stackoverflow.com/questions/41960001
复制相似问题