SetViewPortExtEx

¿øÇü BOOL SetViewportExtEx(HDC hdc, int nXExtent, int nYExtent, LPSIZE lpSize);
Àμö

¢ºhdc : È®ÀåÀ» º¯°æÇÒ DCÇÚµé

¢ºnXExtent, nYExtent : ºäÆ÷Æ®ÀÇ ¼öÆò, ¼öÁ÷ È®Àå°ªÀ» ÀåÄ¡ ´ÜÀ§·Î ÁöÁ¤ÇÑ´Ù.

¢ºlpSize : ÀÌÀü ¼³Á¤µÈ È®Àå°ªÀ» Á¶»çÇϱâ À§ÇÑ SIZE ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍÀÌµÇ ÀÌÀü°ªÀ» Á¶»çÇÒ ÇÊ¿ä°¡ ¾øÀ¸¸é NULL·Î ³Ñ°ÜÁØ´Ù.

¸®ÅÏ ¼º°øÇϸé 0ÀÌ ¾Æ´Ñ °ªÀ» ¸®ÅÏÇÏ¸ç ¿¡·¯ ¹ß»ý½Ã 0À» ¸®ÅÏÇÑ´Ù.
¼³¸í

ºäÆ÷Æ®ÀÇ È®ÀåÀ» ¼³Á¤ÇÑ´Ù. ´Ü MM_ISOTROPIC, MM_ANISOTROPIC ¸ÊÇÎ ¸ðµåÀÎ °æ¿ì¸¸ À¯È¿ÇÏ¸ç ´Ù¸¥ ¸ÊÇÎ ¸ðµå¿¡¼­ ÀÌ ÇÔ¼ö È£ÃâÀº ¹«½ÃµÈ´Ù. È®ÀåÀ̶õ ÁÂÇ¥ °ø°£ÀÇ ¹üÀ§¸¦ ĪÇÏ´Â °³³äÀ̸ç È®ÀåÀ» º¯°æÇÒ ¼ö ÀÖ´Â ¸ÊÇÎ ¸ðµå´Â MM_ISOTROPIC, MM_ANISOTROPIC µÎ °¡Áö¹Û¿¡ ¾ø´Ù. ÀÌ µÎ ¸ÊÇÎ ¸ðµå¿¡¼­ À©µµ¿ìÀÇ È®ÀåÀº ±×·¡ÇÈ Ãâ·Â ÇÔ¼ö°¡ ÀνÄÇÏ´Â ¿ìÇÏ´Ü ÁÂÇ¥¸¦ ÁöÁ¤ÇÏ¸ç ºäÆ÷Æ®ÀÇ È®ÀåÀº ½ÇÁ¦ È­¸é¿¡ Ãâ·ÂµÉ ¶§ÀÇ ¿ìÇÏ´Ü ÁÂÇ¥¸¦ ÁöÁ¤ÇÑ´Ù. ±×·¡ÇÈ Ãâ·Â ÇÔ¼ö°¡ »ç¿ëÇÏ´Â ÁÂÇ¥´Â À©µµ¿ì¿Í ºäÆ÷Æ®ÀÇ È®Àå ¼³Á¤¿¡ µû¶ó ÀûÀýÇÏ°Ô º¯È¯µÈ´Ù. Áï ¿øÁ¡³¢¸® ´ëÀÀµÇ¸ç ¿ìÇÏ´Ü ÁÂÇ¥³¢¸® ´ëÀÀµÇ°í ³ª¸ÓÁö Áß°£Á¡ÀÇ ÁÂÇ¥´Â È®ÀåÀÇ ºñÀ²¿¡ µû¶ó ÀûÀýÇÏ°Ô ¸ÊÇεȴÙ. MM_ISOTROPIC ¸ÊÇÎ ¸ðµå¿¡¼­ SetWindowExtEx¸¦ ¸ÕÀú È£ÃâÇÑ ÈÄ¿¡ SetViewportExtEx¸¦ È£ÃâÇØ¾ß ÇÑ´Ù.

¿¹Á¦ 1

´ÙÀ½ ¿¹Á¦´Â À©µµ¿ìÀÇ È®ÀåÀ» (200,200)À¸·Î ¼³Á¤ÇÏ°í ºäÆ÷Æ®ÀÇ È®ÀåÀ» ÇöÀç ÀÛ¾÷ ¿µ¿ª Å©±â·Î ¼³Á¤ÇÑ´Ù. µû¶ó¼­ 200,200ÀÇ ³í¸® ÁÂÇ¥ °ø°£¿¡ ±×·ÁÁø ±×¸²Àº Ç×»ó ÀÛ¾÷ ¿µ¿ª¿¡ °¡µæÂù Å©±â·Î¸¸ ±×·ÁÁø´Ù.

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
	HDC hdc;
	PAINTSTRUCT ps;
	RECT rect;

	switch(iMessage) {
	case WM_PAINT:
		hdc=BeginPaint(hWnd, &ps);
		SetMapMode(hdc,MM_ANISOTROPIC);
		SetWindowExtEx(hdc,200,200,NULL);
		GetClientRect(hWnd, &rect);
		SetViewportExtEx(hdc,rect.right,rect.bottom,NULL);
		SelectObject(hdc,GetStockObject(LTGRAY_BRUSH));
		Rectangle(hdc,10,10,190,190);
		SelectObject(hdc,GetStockObject(DKGRAY_BRUSH));
		Ellipse(hdc,50,50,150,150);
		EndPaint(hWnd, &ps);
		return 0;
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù. À©µµ¿ìÀÇ Å©±â¿¡ »ó°ü¾øÀÌ Ãâ·ÂµÇ´Â °á°ú´Â Ç×»ó ÀÏÁ¤ÇÏ´Ù.

¸¸¾à ¸ÊÇÎ ¸ðµå¸¦ Á¾È¾ºñ°¡ ÀÏÁ¤ÇÑ MM_ISOTROPICÀ¸·Î º¯°æÇϸé È®ÀåÀ» ¹Ù²Ü ¼ö´Â ÀÖÁö¸¸ Ç×»ó Á¾È¾ºñ¸¦ À¯ÁöÇÑ´Ù.

Âü°íÇÔ¼ö SetWindowExtEx
Ç÷¿Æû95ÀÌ»ó
º»¹®ÂüÁ¶ 

written by http://www.winapi.co.kr