SeeAlso) 레밍즈프로젝트, 레밍즈프로젝트/프로토타입, MFC, (zeropage)bitblt로투명배경구현하기

코드

LoadBitMap

~cpp
	void DrawBitMap(UINT ITEM, int x, int y, UINT rop=SRCCOPY){ 
		//bitmap Load 
		CBitmap newBitmap, *oldBitmap; 
		CDC BitMapDC; 
		BitMapDC.CreateCompatibleDC(this->getMemDC()); 
		newBitmap.LoadBitmap(ITEM); 
		oldBitmap = (CBitmap*)BitMapDC.SelectObject(&newBitmap); 

		//비트맵 크기 정보 로드 
		BITMAP bitmapInfo; 
		newBitmap.GetBitmap(&bitmapInfo); 

		//draw 
		m_pMemDC->BitBlt(x, y, bitmapInfo.bmWidth, bitmapInfo.bmHeight, &BitMapDC, 0, 0, rop); 

		//회복 
		BitMapDC.SelectObject(oldBitmap);
	}

MASK BITMAP

~cpp
	void DrawMaskBitMap(UINT MASKITEM, UINT IMGITEM, int x, int y){
		this->DrawBitMap(MASKITEM, x, y, SRCAND);
		this->DrawBitMap(IMGITEM, x, y, SRCPAINT);
		return;
	}

설명

용도

레밍이미지와 배경을 자연스럽게 합성하기 위해서 사용한다.
플레시, 포토ㅤㅅㅑㅍ에서 사용되는 마스크이미지의 개념과 같다.
두장의 이미지 중 한장은 그림의 형태를 나타내고, 한장은 실제 이미지이다. 실제이미지중 그림의 형태에 겹치는 부분만 출력되는 방식이다.
Retrieved from http://wiki.zeropage.org/wiki.php/레밍즈프로젝트/프로토타입/마스크이미지
last modified 2021-02-07 05:29:22