GetObjectW 関数 (wingdi.h)
GetObject 関数は、指定したグラフィックス オブジェクトの情報を取得します。
構文
int GetObjectW(
HANDLE h,
int c,
LPVOID pv
);
パラメーター
h
c
pv
戻り値
関数が成功し、 lpvObject が有効なポインターである場合、戻り値はバッファーに格納されているバイト数です。
関数が成功し、 lpvObject が NULL の場合、戻り値は関数がバッファーに格納する情報を保持するために必要なバイト数です。
関数が失敗した場合は、0 を返します。
注釈
lpvObject パラメーターが指すバッファーは、グラフィックス オブジェクトに関する情報を受け取るために十分な大きさである必要があります。 グラフィックス オブジェクトに応じて、この関数は BITMAP、DIBSECTION、EXTLOGPEN、LOGBRUSH、LOGFONT、または LOGPEN 構造体、またはテーブル エントリの数 (論理パレットの場合) を使用します。
hgdiobj が CreateDIBSection を呼び出して作成されたビットマップのハンドルであり、指定されたバッファーが十分な大きさである場合、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 を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | wingdi.h (Windows.h を含む) |
Library | Gdi32.lib |
[DLL] | Gdi32.dll |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示