我正在爲這家印刷公司創建一個小型圖像上傳驗證程序,他們需要確保上傳的圖像具有CMYK或PMS的顏色空間。檢測圖像顏色空間是CMYK還是PMS
這是我使用的是什麼現在:
Image img = Image.FromStream(fupFile.PostedFile.InputStream);
ImageFlags flags = (ImageFlags)Enum.Parse(typeof(ImageFlags), img.Flags.ToString());
我可以再檢查標誌,其中將包含如「部分可伸縮| 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
有誰知道元數據是否包含圖像的顏色空間?
感謝有關PMS的信息,我不知道。至於閱讀和解析原始頭文件,你能告訴我該怎麼做,或者讓我朝正確的方向發表一篇能夠幫助我的博客文章嗎?此外,所有圖像類型(.jpg,.gif,.png)中的顏色空間是否一致,或每個圖像類型是否具有不同的顏色空間? – Steven 2010-10-27 20:37:48