CGBitmapContextCreate
함수를 사용하여 그래픽 컨텍스트 객체를 만들 때, 사용하는 마지막 파라미터에 대한 의문
함수 원형은 일단 다음과 같다.
CGContextRef CGBitmapContextCreate (
void *data, // 통상 NULL을 쓴다.
size_t width, // 이미지의 가로 크기
size_t height, // 이미지의 세로 크기
size_t bitsPerComponent, // 컴포넌트(채널)별 비트 수, 통상 8을 쓴다. (RGBA로 32비트 색상을 쓰니까)
size_t bytesPerRow, // 한줄에 들어가는 바이트 수. 이는 width * 4가 된다. (32비트가 4바이트니까)
CGColorSpaceRef colorspace, // 컬러스페이스 객체
CGBitmapInfo bitmapInfo // 문제의 마지막 파라미터
);
이와 같이 정의되어 있는데, 실제 예제들을 보면 (애플 개발자 문서에서도!) kCGImageAlphaPremultipliedLast
와 같은 값을 넘기는데, 이는 CGBitmapInfo
가 아니라 CGImageAlphaInfo
에 정의된 상수값이다!! 더 보기 »[CoreGraphics] CGBitmapContextCreate의 CGBitmapInfo 값