【发布时间】:2011-05-01 12:35:17
【问题描述】:
我正在为这家印刷公司创建一个小型图像上传验证器,他们需要确保上传的图像具有 CMYK 或 PMS 的色彩空间。
这是我现在正在使用的:
Image img = Image.FromStream(fupFile.PostedFile.InputStream);
ImageFlags flags = (ImageFlags)Enum.Parse(typeof(ImageFlags), img.Flags.ToString());
然后我可以检查 flags,其中将包含类似“Partially Scalable | ColorSpaceCmyk | HasRealPixelSize”的内容。这里有更多信息:http://msdn.microsoft.com/en-us/library/system.drawing.imaging.imageflags.aspx
请注意,PMS 颜色空间没有标志。有没有办法检查?
另外,我上传的一些文件根本没有色彩空间标志。这是否意味着无法识别色彩空间?
我也想知道这是检查色彩空间的万无一失的方法,还是有更好的策略?
编辑:
我一直在环顾四周,我猜你可以从图像的元数据中获取大量数据。 http://msdn.microsoft.com/en-us/library/xddt0dz7%28v=VS.90%29.aspx
有谁知道元数据是否包含图像的色彩空间?
【问题讨论】: