E D R , A S I H C RSS

bitblt로 투명배경 구현하기

bitblt로 명배경 구

만, 명배경라고 , 배경를 겹그린다는 뜻다.^^
만들 것 같..미~만들.^^

두가 그림 데, bitblt로 까 동그라미라 그리는 날,
동그라미 배경 그림 .

그럼 떻게 면 될까? 답부드리렇게~!

그림과

zeropage:back02.jpg

그림

char02.jpg

OR 리면..

last_1.jpg

~?

(OR란! 0or0=0 0or1=1 1or0=1 1or1=1 되는 다. 다 0과 떤값 or떤값 그대로 나게 되.^^
000000000000000000000000까 (bit로 ㅎ 갯가 맞나?) or 그대로 나다.^^)

.. 그럼 두 그림 다~!^^
두개 그림 DC가 .^^

hdc_original

char01.jpg

hdc_background

back01_1.jpg

그림 다.^^
각각 DC 그림 .^^
그림 가로 기는 size_x 기는 size_y 다.^^
그리고 RGB값 255,0,255다.^^

될 mask 될 DC를 만들다.^^
~cpp 
HDC hdc_mask; 
HBITMAP bitmap_mask;
hdc_mask= CreateCompatibleDC( hdc_background ); 
bitmap_mask=CreateBitmap(size_x, size_y, 1, 1, NULL); //mask로    다~!'ㅇ')/
SelectObject(hdc_mask,bitmap_mask);
~ 만들다.^^
를 만들다~!^^
~cpp 
SetBkColor(hdc_original, RGB(255,0,255) );
BitBlt(hdc_mask,0,0,size_x,size_y,hdc_original,0,0,SRCCOPY);
배경(RGB(255,0,255))는 모두 검로 만들 다.^^
배경되는 .^^ 그러까 결과는..

char_mark.jpg

런 값 다.^^
공뒤 배경로 바꾸 다.^^
~cpp 
SetBkColor(hdc_original, RGB(0,0,0));
SetTextColor(hdc_original, RGB(255,255,255));
BitBlt(hdc_original,0,0,size_x,size_y,hdc_mask,0,0,SRCAND);
AND .^^
(AND란? 0and0=0 0and1=0 1and0=0 1and1=1 다 0과 and면 무 0로! 1과 and 면 대값 그대로 나는,
만 골라내기 다.^^)
그래 결과는..

char02.jpg

렇게 되겠다.^^
뽀..~>ㅁ<;;
.. 고, 는 배경 리를 ?
~cpp 
SetBkColor(hdc_background, RGB(255,255,255));
SetTextColor(hdc_background, RGB(0,0,0));
BitBlt(hdc_background,0,0,size_x,size_y,hdc_mask,0,0,SRCAND);
궁극 AND.. 또 다.^^
결과는..

back02_1.jpg

렇게 될꺼.^^
! OR로 다!~^^
~cpp 
BitBlt(hdc_background,0,0,size_x,size_y,hdc_original,0,0,SRCPAINT);
last.jpg

. 모두 끝났~!
기는 ~! 뒷리는 깔끔!!
~cpp 
DeleteDC(hdc_mask);
DeleteObject(bitmap_mask);
.^^

~ 보라 그런 대로 되 모르겠..^^
라.^^ 련만..
~ 발견되면 .^^

그럼~~ㅎ

-----
..
로그램 ..
그를 는 디 다..
날려 #include <부> 가능 리기.. 나? ..

결국 메모리 만들 명 배경만들기 ㅡ.ㅡ;
말고 로 바꿔 그려는 방법 나;;;

가기

(beonit)/ MFC기반로 더블 다.
----
로그래밍
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:31:36
Processing time 0.0172 sec