프로그래밍 기술/Windows API

2. 기본 그리기 [Windows API]

언제나휴일 2016. 4. 7. 23:18
반응형

2. 기본 그리기

Windows API에서 그리기는 DC(Device Context)를 이용합니다.

 

DC란 출력에 필요한 여러 정보를 가지고 있는 구조체로 라인이나 경계를 그릴 때 사용하는 펜, 면을 채울 때 사용하는 브러쉬 등의 정보를 갖고 있습니다.

 

DC를 사용하지 않고 그리기를 한다고 가정하면 선을 그리기 위해 두 점의 좌표 뿐만 아니라 선의 형태, 선의 두께, 선의 색상 정보들을 인자로 전달해야 합니다. 사각형을 그리기 위해서는 좌표 뿐만 아니라 경계 선의 형태, 선의 두께, 선의 색상 정보, 면을 채울 색상, 패턴 등의 인자가 필요하겠죠. 이처럼 그리기를 위해 전달해야 하는 인자를 단순화하기 위해 Windows API에서는 DC를 사용하고 있습니다.

 

Windows API에서는 그리기 위해 DC를 발급받습니다. 그리고 그리기에 사용할 펜이나 브러쉬 등의 그리기 개체를 생성합니다. 생성한 그리기 개체는 그리기 작업을 수행하기 전에 DC에 선택할 수 있습니다. 이 후 그리기 작업을 수행하면 DC에 선택한 그리기 개체를 이용하여 그리기를 수행합니다. 따라서 실제 그리기 작업을 할 때 사용하는 함수에는 DC에 선택한 그리기 개체 정보는 전달할 필요가 없으며 DC의 핸들을 전달하면 내부에서 DC에 선택한 그리기 개체를 이용하여 그리기 작업을 수행합니다.

 

다음은 그리기 작업을 할 때의 기본적인 수행 흐름입니다.


그리기 작업 수행 흐름


[그림 1] 그리기 작업 수행 흐름

 

반응형