-
Win32 API 4강. 그래픽(2) 문자 출력과 색상 설정Win32 API with 나우캠퍼스 2022. 8. 13. 23:58
4. 문자 출력
TextOut()
▩ 함수의 원형
BOOL TextOutA( [in] HDC hdc, [in] int x, [in] int y, [in] LPCSTR lpString, [in] int c );
hdc : 사용할 DC
x,y : 클라이언트 영역 기준의 출력좌표.
lpString : 출력할 문자열
c : 출력할 문자열의 길이로 strlen같은 함수를 사용하면 됨.
사용예시.
Hdc hdc char string[100]; switch(message) { ---------- 생략 --------- case WM_PAINT: { hdc = BeginPaint(hWnd, &ps); sprintf_s(string, "Hello World"); TextOut(hdc, 0, 0, string, strlen(string)); EndPaint(hWnd, &ps); } break; ---------- 생략 ---------
5. 출력 색상 설정
색상 개요
▩ 삼원색
- red, green, blue의 약자 RGB
▩ 색상 범위
- DWORD를 사용. 0~255범위
255에 가까울 수록 원색에 가까워짐
색상 관련 매크로 함수
▩ RGB()
COLORREF RGB(BYTE byRed, BYTE byGreen, BYTE byBlue);
byRed : 빨간색 범위(0~255)
byGreen : 초록색 범위(0~255)
byBlue : 파란색 범위(0~255)
BYTE GetRValue(DWORD rgb); // 빨간색 값 얻기 BYTE GetGValue(DWORD rgb); // 초록색 값 얻기 BYTE GetBValue(DWORD rgb); // 파란색 값 얻기
참고, #define COLORREF DWORD 으로 정의되어있다.
6. 색상값을 활용한 점 출력과 색강값 구하기
점 (dot) 출력 함수
▩ SetPixel()
색상값을 사용한 한 픽셀 출력
SetPixel(HDC hdc, int X, int Y, COLORREF crColor);
hdc : 사용할 DC
X : 출력할 x좌표
Y : 출력할 y좌표
crColor : 출력할 색상
▩ GetPixel()
화면 DC에 출력된 색상값을 구하는 함수
COLORREF GetPixel(HDC hdc, int nXPos, int nYpos);
hdc : 사용할 DC
nXPos : 색상을 얻을 x좌표
nYPos : 색상을 얻을 y좌표
'Win32 API with 나우캠퍼스' 카테고리의 다른 글
Win32 API 5강. 그래픽 오브젝트(1) 스톡 오브젝트와 GDI 오브젝트 (0) 2022.08.15 Win32 API 4강. 그래픽(3) 문자열의 색상 설정 및 InvalidateRect() (0) 2022.08.15 Win32 API 4강. 그래픽(1) GDI, DC 개념과 함수 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 메뉴 및 문자열 리소스 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 커서 (0) 2022.08.13