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
[60215] TImage , TImage32 써보니 되던데여...
제리압빠. [kamizen] 3509 읽음    2010-02-10 13:47
bmp배경 님이 쓰신 글 :
: 그림을 보시면 형광색 화살표 옆으로 흰색 배경이 나오는데요
:
: 안나오게 하는 방법 없나요? 화살표만 나오게 하고 싶습니다.

png-24 투명 설정 하고 포토샵에서 저장 후 테스트 해보았습니다...
TImage랑 TImage32 두개 다 테스트 해봤습니다..
둘다 잘되더군요.

처음 기본 프로퍼티 설정으로는 두 컴포넌트 다 허연색이 붙어 나옴니다.
하지만 TImage 인 경우 Object Inspector에 보면 Transparent 속성을 true로 설정 하면 한방에 됩니다.
TImage32 인 경우 Object Inspector설정을 Bitmap->DrawMode 를 기본 dm오빠큐에서 dmTransparent로 변경하고
아래 코드 처럼 Bitmap에 그릴때 제외칼라 설정을 해줘야 합니다

        img32->Bitmap->OuterColor = png->Canvas->Pixels[0][0]; // 이런식으로  제외 칼라 선정을 해줘야합니다.
0.0좌표의 픽셀이 ... 제외색이 아닌 경우는 대략 난감한 상황이 벌어지겠지만 ㅋㅋ

    if( OD1->Execute())
    {
        //img1->Picture->LoadFromFile( OD1->FileName );
        TPNGGraphic *png = new TPNGGraphic();
        png->LoadFromFile( OD1->FileName );
        //bmp->LoadFromFile( OD1->FileName );
        img1->Picture->Assign( png );
        img32->Bitmap->OuterColor = png->Canvas->Pixels[0][0];
        img32->Bitmap->Assign( png );
        delete png;
    }

참고 하시구염.
png파일 자체에서 투명도값을 읽어내는 루틴은 차근히 공부 해보시기 바랍니당 수고염~~!

+ -

관련 글 리스트
60205 bmp배경색을 안나타나게 할수 없나요? bmp배경 1230 2010/02/10
60215     TImage , TImage32 써보니 되던데여... 제리압빠. 3509 2010/02/10
60229         Re:안되는데요.. 안녕하세요 1372 2010/02/11
60290             Re:Re:안되는데요.. 제리압빠. 1358 2010/02/22
60208     Re:bmp배경색을 안나타나게 할수 없나요? 한수동 1538 2010/02/10
60251         Re:Re:bmp배경색을 안나타나게 할수 없나요? df 1629 2010/02/13
60211         답변 감사합니다~ 냉무 답변감사 1077 2010/02/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.