-
Win32 API 4강. 그래픽(1) GDI, DC 개념과 함수Win32 API with 나우캠퍼스 2022. 8. 13. 15:26
목차
1. 개요
2. DC 개념과 역할
3. DC 함수
4. 문자 출력
5. 출력색상 설정
6. 색상값을 활용한 점 출력과 색상값 구하기
7. 색상을 적용한 문자열 출력
8. InvalidateRect()
1. 개요
그래픽 개요
▩ GDI(Graphics Device Interface) : 운영체제의 한 부분으로 출력을 담당 (Gdi.dll)
GDI 내부에는 Graphics drivers가 들어있다. 따라서 GDI가 Graphics drivers를 관리해주기 때문에 사용자는 하드웨어에 관한 부분을 몰라도 된다.
2. DC 개념과 역할
그래픽 개요
▩ DC?
DC는 출력하기 위한 장치(화면, 프린터)의 특성을 저장하는 구조체
Application => DC(화면, 프린터) => GDI
▩ DC를 사용하는 그래픽 오브젝트
비트맵, 브러쉬, 펜, 팔레트, 폰트, Region, Path 등
▩ DC의 데이터형 => 핸들
HDC
typedef HANDLE HDC; typedef PVOID HANDLE; typedef void* PVOID;
3. DC함수
함수 소개
▩ 화면 DC에 관련된 함수
BeginPaint(), EndPaint() : BeginPaint를 쓰면 종료지점에 반드시 EndPaint를 써줘야한다.
GetDC(), ReleaseDC() : GetDC를 쓰면 종료지점에 반드시 ReleaseDC를써줘야한다.
BeginPaint(), EndPaint()
▩ WM_PAINT 메시지 처리에서만 사용가능
WM_PAINT : 클라이언트 영역을 그려주는 WinProc메시지
HDC BeginPaint( [in] HWND hWnd, [out] LPPAINTSTRUCT lpPaint ); BOOL EndPaint( [in] HWND hWnd, [in] const PAINTSTRUCT *lpPaint );
GetDC(), ReleaseDC()
▩ 함수 원형
WM_PAINT밖에서도 사용이 가능함.
HDC GetDC(HWND hWnd); int ReleaseDC(HWND hWnd, HDC hdc);
'Win32 API with 나우캠퍼스' 카테고리의 다른 글
Win32 API 4강. 그래픽(3) 문자열의 색상 설정 및 InvalidateRect() (0) 2022.08.15 Win32 API 4강. 그래픽(2) 문자 출력과 색상 설정 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 메뉴 및 문자열 리소스 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 커서 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 아이콘 (0) 2022.08.13