我正在將CMYK jpeg圖像加載到NSImage, 如何提取特定像素的c,m,y,k值? 我怎樣才能獲得所有CMYK像素數據的字節數組... 我使用.bitmapData RGB圖像,但它似乎是CMYK圖像它都是0xff。CMYK NSImage獲取像素數據
我試圖轉換到NSImage中RGB色彩空間,但我不喜歡的結果..我實際想要的C,M,Y,K值,而不是等效RGB值
NSImage *image = [[NSImage alloc] initWithContentsOfFile:inputImageString];
NSBitmapImageRep* rep = [NSBitmapImageRep imageRepWithData:[image TIFFRepresentation]];
bool isCMYK = [rep.colorSpaceName isEqualToString: NSDeviceCMYKColorSpace];
const unsigned char *bytes = rep.bitmapData;
// all values at bytes are not weird and does not represent CMYK values
ps我不能使用核心圖形,因爲這個可可代碼是使用GNUStep編譯的。
我認爲這是gnustep你遇到的問題。使用蘋果常規LLVM編譯器,您的代碼可以在我的Mac上正常工作。試試'[rep colorAtX:0 y:0]'看看你回來了什麼。它應該像'NSDeviceCMYKColorSpace'後面跟着4個顏色值。 http://i.imgur.com/YqExUqc.png –