태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

비트맵 파일을 배열으로 변환 - BMP2ARRAY

Posted on 2008.02.28 14:52
Filed Under Misc

  • 이 글은 Jake 에 의해 www.jakeworld.net 에서 작성되었습니다.

  • 퍼가실 때는 이 박스와 함께 복사해주세요.

사용자 삽입 이미지

[BMP2ARRAY]

BMP2ARRAY란 BMP 이미지를 헤더를 제외한 실제 색상 정보들을 배열 코드로 변환해주는 프로그램입니다.

[용도]

임베디드 프로그래밍 할때 보통 하나의 바이너리로 묶은 파일을 장비에 올리거나 NDS 홈브루 제작할 경우 롬 이미지로 만들어서 올리게 되는데 이 때 이미지 파일을 소스에 첨부시킬 방도가 마땅치 않습니다. 이미지 자체를 그대로 어셈블리로 만드는 변환 툴이 있긴 하지만 색상값을 일일히 컨트롤 하기가 힘듭니다. (ex:어떤색은 투명색으로 지정하고 싶을 경우)

이 때 이미지를 배열로 변환하여 색상값을 일일히 컨트롤이 가능하며 컴파일할때 바이너리에 첨부하는 꼼수라고 할 수 있습니다.


[기능]

BMP2C와 BMP2ARRAY 의 차이점은 콘솔명령 프로그램이었던 BMP2C 와는 달리 BMP2ARRAY 는 MFC 다이얼로그 기반이고,

BMP2C는 5:6:5 고정 BMP포맷만을 지원하여 BMP 를 제작할때 포토샵 이외에는 BMP 를 뽑을 수 없었던 반면,

BMP2ARRAY는 24bit 컬러포맷을 5:6:5, 5:5:5 포맷으로 배열로 변환하는 기능을 지원합니다.

그리고 5:6:5포맷의 BMP 를 5:6:5 배열 변환 기능 역시 기본으로 가지고 있습니다.

단, 5:5:5포맷의 BMP 를 5:5:5 배열 변환 기능은 현재 지원하지 않습니다.


[COMMENT]

개인적으로 EMDK4000을 사용할때 BMP2C 라는 5:6:5 형식의 BMP고정포맷만 지원하는 프로그램을 사용하고 익숙했었기 때문에 베이스는 BMP2C 의 결과물이였습니다. BMP2ARRAY 의 제작 목적은 NDS 의 LCD 가 5:5:5 방식을 지원하기 때문인데 일반적으로 5:6:5 방식을 지원하는 LCD 가 많기 때문에 둘다 지원할 수 있는 프로그램을 만들자 였습니다. 그 와중에 24Bit 포맷을 다른 포맷으로 지원하게 하는 기능도 편할 것 같아 넣었네요.

처음에 만들때는 간단한 프로그램이라 금방 만들겠지 싶었는데 MFC 지식은 거의 전무한 상태고 API 프로그래밍 조차 해본적이 없던지라만드는데 꼬박 하루 걸렸습니다. ㅠㅠ

코드도 엉망진창이고 쪽팔려서 코드는 일단 공개하지 않습니다. 필요하신 분이 계시면 별도로 메일 주시면 드릴께요.


VS2005 에서 제작하였습니다.




이 글은 스프링노트에서 작성되었습니다.

신고
Creative Commons License
Creative Commons License

'Misc' 카테고리의 다른 글

간만에 책을 왕창 지르다.  (0) 2008.03.23
오피스 2007 대학생 구입 혜택  (0) 2008.03.15
비트맵 파일을 배열으로 변환 - BMP2ARRAY  (8) 2008.02.28
무선랜 USB IP-Time G054U2  (0) 2008.02.21
WD5000AAKS  (0) 2007.12.31
30인치 오픈프레임 (ST A2)  (3) 2007.12.19

댓글을 달아 주세요

  1. 잠이최 2008.04.02 10:33 신고  댓글주소  수정/삭제  댓글쓰기

    긁어져야 퍼가지..ㅡㅡ;

  2. furyheimdall 2008.04.10 19:16 신고  댓글주소  수정/삭제  댓글쓰기

    ㅡㅡ; 스프링노트 와서 긁어가

  3. 구차니 2008.04.27 16:09 신고  댓글주소  수정/삭제  댓글쓰기

    ㅠ.ㅠ 저도 저희 장비에 bmp 기능을 넣는다고 아주 고생을 했던 기억이 불과 두달전이라서 웬지 공감이 가네요 ㅋㅋ

    티스토리 우클릭 방지, 드래그 불가 미워요! ㅋ
    제 블로그에는 24bit 버전 8:8:8 이라고 해야겠네요 ^^;
    indexed color bitmap을 rgbquad 변환하는 소스가 있으니 필요 하시면 찾아 가세요 ^^;

    전 순수 c로 console작동합니다 ^^;
    (물론 BITMAPHEADINFO , BITMAPHEADER 등의 구조체는 mfc에서 추출했답니다
    날로먹는 구분에서 찾으시면되요)

  4. 창미니 2008.10.17 17:15 신고  댓글주소  수정/삭제  댓글쓰기

    감솨...해요..........
    제가 찾던 자룐데...ㅎㅎㅎ 잘 사용하겠습니다. ^^ (--)(__)(--)(꾸벅)

    • furyheimdall 2008.10.17 19:40 신고  댓글주소  수정/삭제

      도움이 되셨다니 다행이네요 :)
      그냥 그럴듯 하게 만들어 놓은거라 개판입니다. ㅎㅎ
      나중에 한국으로 돌아가면 전체적으로 손좀 봐야겠어요.

  5. 추대성 2013.12.13 11:13 신고  댓글주소  수정/삭제  댓글쓰기

    제가 이 자료가 꼭 필요해서 그런데
    번거로우시겠지만 불쌍한 후배 도와주신다는 생각으로 소스 좀 보내 주실수 있을까여??

    nanna8822@nate.com 으로 보내주시면 감사하겠습니다 *^^*

About



모바일 페이지 QR 코드

Counter

· Total
: 451,587
· Today
: 10
· Yesterday
: 95


DNS server, DNS service