2009-02-01 6 views
1

좋아, 실제로 쿼츠에서 색상 보정을 사용 중지 할 수 없음을 알고 있습니다. 내가 뭘 찾고있는 장치 독립적 인 색상 공간을 CGLayer에서 그릴 RGB 값을 변경 dosn't 설정입니다.석영에서 색상 보정을 사용하지 않도록 설정 2d

시스템 라이브러리에서 모든 ICC 프로파일을 시도했지만 색상이 모두 바뀌 었습니다.

const CGFloat whitePoint[] = {0.95047, 1.0, 1.08883}; 
const CGFloat blackPoint[] = {0, 0, 0}; 
const CGFloat gamma[] = {1, 1, 1}; 
const CGFloat matrix[] = {0.449695, 0.244634, 0.0251829, 0.316251, 0.672034, 0.141184, 0.18452, 0.0833318, 0.922602 }; 
CGColorSpaceRef colorSpace = CGColorSpaceCreateCalibratedRGB(whitePoint, blackPoint, gamma, matrix); 

이 애플 RGB의 색 변환 매트릭스 및 D65 화이트 포인트를 사용

이것은 내가 가진 최고의 결과입니다.

색상이 여전히 약간 변하지 만 기기에 의존하는 설정보다 훨씬 행복합니다. 여기

내가 TIFF로 CGLayer를 작성하는 방법은 다음과 같습니다

CIImage *image = [CIImage imageWithCGLayer:cgLayer]; 
NSBitmapImageRep *bitmapImage = [[NSBitmapImageRep alloc] initWithCIImage:image]; 
[[bitmapImage TIFFRepresentation] writeToFile:fileName atomically:YES]; 

어떤 도움을 주시면 감사하겠습니다.

답변

1

색상이 대상과 동일한 색 공간의 일부로 선언되지 않는 이유는 무엇입니까? CGLayer?

CGColorSpaceCreateDeviceRGB의 DOCO 보인다

것은 그냥 말 수 :

CGColorSpaceCreateDeviceRGB

관련 문제