CDC::Bitblt()
CImage::Bitblt()
CDC 클래스의 BitBlt() 함수는 메모리 DC에서 화면 DC로 비트맵을 전송해준다.
void CBmpDisplayDemoView::OnPaint()
{
CPaintDC dc(this); // device context for painting
// 화면 DC
CDC MemDC;
BITMAP bmpInfo; // 비트맵 구조체
MemDC.CreateCompatibleDC(&dc); // 화면 DC와 호환되는 메모리 DC를 생성한다.
// 출력할 화면과 호환되도록 DC를 먼저 생성해야한다.
CBitmap bmp; // 비트맵 클래스
// CBitmap *pOldBmp = NULL;
bmp.LoadBitmapW(IDB_Test_Image); // 비트맵 리소스를 로딩한다.
bmp.GetBitmap(&bmpInfo); // 로딩된 비트맵의 정보(비트맵 구조체에 저장되어있는)를 알아본다.
CBitmap *pOldBmp = MemDC.SelectObject(&bmp); // 메모리 DC에 비트맵을 선택하도록 한다.
// dc.BitBlt(100, 100, bmpInfo.bmWidth, bmpInfo.bmHeight, &MemDC, 0, 0, SRCCOPY); // 메모리 DC에 들어있는 비트맵을 화면 DC로 복사하여 출력한다.
dc.BitBlt(0, 0, // 출력될 윈도우의 좌표
350, 400, // 출력할 비트맵의 폭과 높이
&MemDC, // 비트맵을 저장한 메모리 DC의 주소
0, 200, // 메모리 DC에 들어있는 비트맵의 시작 좌표
SRCCOPY); // 적용할 래스터 연산
dc.BitBlt(750, 0,
bmpInfo.bmWidth, bmpInfo.bmHeight,
&MemDC,
0, 0,
SRCCOPY);
MemDC.SelectObject(pOldBmp);
}
'language > MFC' 카테고리의 다른 글
CDC::AlphaBlend() (0) | 2016.05.07 |
---|---|
CDC::SelectObject() (0) | 2016.05.07 |
비트맵과 이미지 출력 (0) | 2016.05.07 |
MFC 코드의 기본 구조 (0) | 2016.05.07 |
CWnd Class (0) | 2016.05.07 |