2011-04-19 6 views
4

상단에 100x100 붉은 색 사각형과 100x100 크기의 갈색 사각형 [RGB 구성 요소 0.6, 0.4, 0.2]을 사용하여 너비 100 픽셀, 높이 200 픽셀의 이미지를 만들고 싶습니다. 바닥. 그리고 한 번에 한 픽셀 씩 각 픽셀의 구성 요소를 뱉어내는 직선의 C 함수로 비트 맵으로 처리한다고 가정 해 보겠습니다. [그 이미지를 만드는 더 쉬운 방법이 있지만 여기에 요점은 iOS 비트 맵을 이해하는 것입니다 - 다음에 각 픽셀에 대해 임의의 값을 가질 수 있습니다.] 어떻게하면됩니까?iOS 비트 맵 이미지 생성 - 간단한 예

답변

6

사용하려는 API는 Apple의 CGBitmapContext Reference에 문서화되어 있습니다.

사용 CGBitmapContextCreate는이어서 (. pixelSize 일반적 ARGB 4 바이트)

height * width * pixelSize 

크기의 메모리 블록에서 비트 맵 콘텍스트를 생성하는 화소와 재생 후에에서 imageRef을 만들 CGBitmapContextCreateImage를 사용 비트 맵 컨텍스트 및 이미지가 있습니다. 이 이미지를보기 위해 CALayer의 내용에 할당하거나 drawRect 안에 이미지를 그릴 수 있습니다.

액세스 화소에 C 어레이의 구문을 사용할 수

myPixelPtr = &bitmap[pixelSize * (x + y * bitmapWidth)]; 

내 화소 입력 할 수 4 부호 바이트 ARGB 각각 하나 또는 단지 원시 바이트의 C 구조체.

관련 문제