Does anybody know how to properly identify CMYK images using C#? I found how to do it using ImageMagick, but I need a .NET solution. I found 3 code snippets online, only one
My test results are a bit different than yours.
The following code should work:
public static bool IsCmyk(this Image image)
{
var flags = (ImageFlags)image.Flags;
if (flags.HasFlag(ImageFlags.ColorSpaceCmyk) || flags.HasFlag(ImageFlags.ColorSpaceYcck))
{
return true;
}
const int PixelFormat32bppCMYK = (15 | (32 << 8));
return (int)image.PixelFormat == PixelFormat32bppCMYK;
}