WinAPI

LoadImage 함수 (이미지 로드)

Nin 2021. 1. 21. 04:07

램에 존재하지 않는 데이터를 실행하거나 프로그램에서 이용할 수 없다.

이미지는 하드 디스크에 저장되어 있고 이를 프로그램에서 사용하려면

램으로 올려줘야 한다.그래픽 카드를 사용한다면 그래픽카드에 올라가게되고

WinApi에서 지원하는 랜더링은 그래픽 카드를 사용하지 않기 때문에

하드디스크에서 램으로 올리는 방식이다.

api에서는 이미지를 불러올때 LoadImage 라는 함수를 사용할 수 있다.

HANDLE LoadImage(
   HINSTANCE hinst, // handle to instance
   LPCTSTR lpszName, // Image to load
   UINT uType, // Imgae type
   int cxDesired, // desired width
   int cyDesired, // desired height
   UNIT fuLoad // load options
);

함수의 원형은 위와 같다.

HINSTANCE hinst : 응용 프로그램의 인스턴스 핸들

LPCTSTR lpszName : 이미지의 파일 경로를 넣어준다

UINT uType : 파일의 타입 IMAGE_BITMAP 을 넣어주면 비트맵을 로드하겠다는 의미

int cxDesired : 이미지의 x크기 

int cyDesired : 이미지의 y크기 0,0 을 넣어주면 이미지의 원본 크기를 사용한다.

UNIT fuLoads : 옵션 LR_LOADFROMFILE 을 넣어주면 파일로부터 로드하겠다는 의미