GetObject 함수(wingdi.h)

GetObject 함수는 지정된 그래픽 개체에 대한 정보를 검색합니다.

구문

int GetObject(
  [in]  HANDLE h,
  [in]  int    c,
  [out] LPVOID pv
);

매개 변수

[in] h

관심 있는 그래픽 개체에 대한 핸들입니다. 논리 비트맵, 브러시, 글꼴, 색상표, 펜 또는 CreateDIBSection 함수를 호출하여 만든 디바이스 독립적 비트맵 중 하나에 대한 핸들일 수 있습니다.

[in] c

버퍼에 쓸 정보 바이트 수입니다.

[out] pv

지정된 그래픽 개체에 대한 정보를 수신하는 버퍼에 대한 포인터입니다.

다음 표에서는 hgdiobj를 사용하여 지정할 수 있는 그래픽 개체의 각 형식에 대해 버퍼가 받는 정보의 유형을 보여 줍니다.

개체 유형 버퍼에 기록된 데이터
HBITMAP

비트맵

CreateDIBSection 호출에서 반환된 HBITMAP

DIBSECTION, cbBuffer 가 로 sizeof (DIBSECTION) 설정된 경우 또는 BITMAP( cbBuffer 가 로 sizeof (BITMAP)설정된 경우)

HPALETTE
논리 팔레트의 항목 수 에 대한 WORD
ExtCreatePen 호출에서 반환된 HPEN

EXTLOGPEN

HPEN

LOGPEN

HBRUSH

LOGBRUSH

HFONT

Logfont

 

lpvObject 매개 변수가 NULL인 경우 함수 반환 값은 지정된 그래픽 개체의 버퍼에 쓰는 정보를 저장하는 데 필요한 바이트 수입니다.

lpvObject의 주소는 4바이트 경계에 있어야 합니다. 그렇지 않으면 GetObject가 실패합니다.

반환 값

함수가 성공하고 lpvObject 가 유효한 포인터인 경우 반환 값은 버퍼에 저장된 바이트 수입니다.

함수가 성공하고 lpvObjectNULL이면 반환 값은 함수가 버퍼에 저장할 정보를 저장하는 데 필요한 바이트 수입니다.

함수가 실패하면 반환 값은 0입니다.

설명

lpvObject 매개 변수가 가리키는 버퍼는 그래픽 개체에 대한 정보를 수신하기에 충분히 커야 합니다. 그래픽 개체에 따라 함수는 BITMAP, DIBSECTION, EXTLOGPEN, LOGBRUSH, LOGFONT 또는 LOGPEN 구조체 또는 테이블 항목 수(논리적 팔레트의 경우)를 사용합니다.

hgdiobjCreateDIBSection을 호출하여 만든 비트맵에 대한 핸들이고 지정된 버퍼가 충분히 크면 GetObject 함수는 DIBSECTION 구조를 반환합니다. 또한 DIBSECTION 내에 포함된 BITMAP 구조체의 bmBits 멤버에는 비트맵의 비트 값에 대한 포인터가 포함됩니다.

hgdiobj가 다른 수단으로 만든 비트맵에 대한 핸들인 경우 GetObject는 비트맵의 너비, 높이 및 색 형식 정보만 반환합니다. GetDIBits 또는 GetBitmapBits 함수를 호출하여 비트맵의 비트 값을 가져올 수 있습니다.

hgdiobj가 논리 팔레트에 대한 핸들인 경우 GetObject는 색상표의 항목 수를 지정하는 2바이트 정수를 검색합니다. 함수는 팔레트를 정의하는 LOGPALETTE 구조를 검색하지 않습니다. 팔레트 항목에 대한 정보를 검색하기 위해 애플리케이션은 GetPaletteEntries 함수를 호출할 수 있습니다.

hgdiobj가 글꼴에 대한 핸들인 경우 반환되는 LOGFONT는 글꼴을 만드는 데 사용되는 LOGFONT입니다. 정확한 LOGFONT 를 나타낼 수 없기 때문에 Windows에서 글꼴을 보간해야 하는 경우 보간이 LOGFONT에 반영되지 않습니다. 예를 들어 세로 그리기를 지원하지 않는 세로 버전의 글꼴을 요청하는 경우 LOGFONT 는 글꼴이 세로이지만 Windows에서 가로로 그립니다.

예제

예제는 이미지 저장을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 wingdi.h(Windows.h 포함)
라이브러리 Gdi32.lib
DLL Gdi32.dll

추가 정보

비트맵

CreateDIBSection

DIBSECTION

디바이스 컨텍스트 함수

디바이스 컨텍스트 개요

EXTLOGPEN

GetBitmapBits

GetDIBits

GetPaletteEntries

GetRegionData

LOGBRUSH

Logfont

LOGPALETTE

LOGPEN