C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[8128] Re:픽셀당 할당된 비트수 읽어오기....
방태윤 [nabty] 1634 읽음    2001-06-11 22:49
<정확하지 않으므로 참고만하세요...>
잘은 모르지만 이미지가 그레이인지 칼라인지는
canvas를 체크해서 알수 있을가요?
대부분 실제 그림화일의 헤더부분에 정의 되어 있습니다.

BITSPIXEL가 16 이면 hicolor 모드겠지요
흑백이미지도 변환 작업을 통해서 화면에 뿌려지는 거겠구요...

이상태에서 그레이를 가려낸다면
그래이로 변환된 그림은 r,g,b 가 같으므로
각각의 픽셀의 r=g=b 를 확인해 보면 어떨가요?

help에 32 bit라면 GetRvalue(Pixels[i][j]),GetGvalue(Pixels[i][j]),GetBvalue(Pixels[i][j])
를 쓰면 될것 같은데 16도 되나 모르겠네요...

안되면 16비트를 분리해야 되는데 오래되서 저두 가물가물...
1+5+5+5 이었던거 같기도 하구요.(5,6,5 인거같기두하고^^)
1(안쓰고) r(5비트) g(5) b(5)
생각나는데로 적어보면 (맞는지 책임못짐..참고만하세여)

b= rgb & 0x1f
g= (rgb>>5) & 0x1f
b= (rgb>>10) & 0x1f

가 다 같은지 아님 띄엄띄엄 체크해보시던가..끝.


김정규 님이 쓰신 글 :
: 안냐세염...
:
: 연달아 질문을 두개 올리는군여... -_-;;
:
: 무지함을 너그러이 여기시어... ^^;;;
:
: MDI에서 현재 활성화된 이미지가 칼라인지 그레이인지 알기 위해서
:
: GetDeviceCaps(Child->ImgView->Canvas->Handle, BITSPIXEL)을 사용했습니다...
:
: 헬프에 보니까 BITSPIXEL은 비트당 할당된 컬러비트를 리턴한다고 나오길래...
:
: 근데 그레이 영상도 그렇고 칼라 영상도 그렇고 값이 16이 나오는군요...
:
: 제가 잘못 알고 있는 건가요???
:
: 아님 GetDeviceCaps() 함수 말고 다른 방법이 있나요???
:
: 한수 가르침 부탁드립니다...
:
: 꾸벅~~

+ -

관련 글 리스트
8090 픽셀당 할당된 비트수 읽어오기.... 김정규 1418 2001/06/10
8128     Re:픽셀당 할당된 비트수 읽어오기.... 방태윤 1634 2001/06/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.