본문 바로가기
코스웨어/14년 스마트컨트롤러

20140925서상우수업보고서

by 알 수 없는 사용자 2014. 9. 25.
728x90
반응형

비트맵 읽어 들여 화면에 찍는 프로그램

반전, 일그러짐현상에 유의해 프로그램을 만들어보자  


(반전)

비트맵 데이터 저장방식은 아래서 부터 위로 축적되는 방식이라서

Y좌표값 0 부터 데이터를 읽게 되면 사진은 상하반전돼서 나오게 됀다.


조건식에서 Y좌표값을 맥시멈에서 순서로 읽어야 이러한 현상에 방지 할수 있다.


(패딩)

가로 세로의 크기가 4의 배수가 아닌 이미지를 출력시킬 경우 

위 사진과 같이 일그러지는 현상이 생긴다. 

비트맵 저장방식은 가로줄의 끝에 패딩 비트를 넣어준다. 

1픽셀당 3바이트이고 읽는 단위 는 4바이트이기 때문에

4의 배수를 마추기 위해 나머지를 더해준다.


ex1) 가로 401픽셀 일경우

1픽셀당 (R,G,B) 3바이트: 401 * 3 = 1203(4의 배수 아님), 401 % 4 = 1(4로 나눴을시 나머지)

1203 + 1 = 1204(4의 배수


ex2) 가로 203픽셀 일경우

1픽셀당 (R,G,B) 3바이트: 203 * 3 = 609(4의 배수 아님), 203 % 4 = 3(4로 나눴을시 나머지)

609 + 3 = 612(4의 배수)  

 

4의배수가 아닐 경우 나머지 추출해서 uiPad담고

ucpPixel에 더해줌


(완성된 소스)

s2w.c


고속출력

위의 소스로 이미지를 불러오게 되면 이미지 출력시간이 상당히 길다.

이미지를 고속으로 출력하게끔 소스를 수정하자. 

  

(소스분석)

 


 


정리는 대충 여기까지!!



728x90