GetObjectA 関数 (wingdi.h)

GetObject 関数は、指定したグラフィックス オブジェクトの情報を取得します。

構文

int GetObjectA(
        HANDLE h,
        int    c,
        LPVOID pv
);

パラメーター

h

c

pv

戻り値

関数が成功し、 lpvObject が有効なポインターである場合、戻り値はバッファーに格納されたバイト数です。

関数が成功し、 lpvObjectNULL の場合、戻り値は、関数がバッファーに格納する情報を保持するために必要なバイト数です。

関数が失敗した場合は、0 を返します。

注釈

グラフィックス オブジェクトに関する情報を受け取るために 、lpvObject パラメーターが指すバッファーは十分に大きくする必要があります。 グラフィックス オブジェクトに応じて、この関数は BITMAPDIBSECTIONEXTLOGPENLOGBRUSHLOGFONT、または LOGPEN 構造体、またはテーブル エントリの数 (論理パレットの場合) を使用します。

hgdiobjCreateDIBSection を呼び出して作成されたビットマップへのハンドルであり、指定されたバッファーが十分な大きさである場合、GetObject 関数は DIBSECTION 構造体を返します。 さらに、DIBSECTION 内に含まれる BITMAP 構造体の bmBits メンバーには、ビットマップのビット値へのポインターが含まれます。

hgdiobj が他の方法で作成されたビットマップへのハンドルである場合、GetObject はビットマップの幅、高さ、および色の書式情報のみを返します。 ビットマップのビット値を取得するには、 GetDIBits または GetBitmapBits 関数を 呼び出します。

hgdiobj が論理パレットのハンドルである場合、GetObject はパレット内のエントリの数を指定する 2 バイトの整数を取得します。 関数は、パレットを定義する LOGPALETTE 構造体を取得しません。 パレット エントリに関する情報を取得するために、アプリケーションは GetPaletteEntries 関数を呼び出すことができます。

hgdiobj がフォントのハンドルである場合、返される LOGFONT はフォントの作成に使用される LOGFONT です。 正確な LOGFONT を表せなかったために Windows でフォントを補間する必要がある場合、補間は LOGFONT に反映されません。 たとえば、垂直方向の描画をサポートしていないフォントの垂直バージョンを要求すると、 LOGFONT はフォントが垂直であることを示しますが、Windows は水平方向に塗りつぶします。

例については、「 イメージの保存」を参照してください。

注意

wingdi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetObject を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h (Windows.h を含む)
Library Gdi32.lib
[DLL] Gdi32.dll

こちらもご覧ください

ビットマップ

CreateDIBSection

DIBSECTION

デバイス コンテキスト関数

デバイス コンテキストの概要

EXTLOGPEN

GetBitmapBits

GetDIBits

GetPaletteEntries

GetRegionData

Logbrush

Logfont

LOGPALETTE

LOGPEN