GetObjectW (Unicode) 関数 (wingdi.h) は、指定グラフィックオブジェクトに関する情報を取得する。
GetObjectW h, c, pv
h : [intptr] c : [int] pv : [intptr]
(プラグイン / モジュール : gdi32.dll)
GetObjectW (Unicode) 関数 (wingdi.h) は、指定グラフィックオブジェクトに関する情報を取得する。 [戻り値] 関数が成功し lpvObject が有効なポインタの場合、戻り値はバッファに格納されたバイト数である。関数が成功し lpvObject が NULL の場合、戻り値はバッファに格納するのに必要なバイト数である。失敗した場合は 0 である。 [備考] lpvObject が指すバッファは、グラフィックオブジェクトの情報を受け取るのに十分な大きさでなければならない。グラフィックオブジェクトによっては、関数は BITMAP、DIBSECTION、EXTLOGPEN、LOGBRUSH、LOGFONT、LOGPEN 構造体、または論理パレットのテーブルエントリ数を使用する。hgdiobj が CreateDIBSection の呼び出しで作成された HBITMAP のハンドルで、指定バッファが十分な大きさを持つ場合、GetObject 関数は DIBSECTION 構造体を返す。さらに DIBSECTION 内の BITMAP 構造体の bmBits メンバには、ビットマップのビット値へのポインタが含まれる。hgdiobj がその他の方法で作成された HBITMAP のハンドルの場合、GetObject はビットマップの幅、高さ、カラーフォーマットの情報のみを返す。ビットマップのビット値を取得するには GetDIBits または GetBitmapBits 関数を呼び出す。hgdiobj が論理パレットのハンドルの場合、GetObject はパレット内のエントリ数を示す 2 バイト整数を取得する。パレットを定義する LOGPALETTE 構造体は取得しない。パレットエントリに関する情報を取得するには GetPaletteEntries 関数を呼び出す。hgdiobj が HFONT のハンドルの場合、返される LOGFONT はフォント作成に使われた LOGFONT である。Windows が正確な LOGFONT を表現できず補間を行った場合、その補間は LOGFONT に反映されない。例えば、縦書き描画をサポートしないフォントの縦書き版を要求すると、LOGFONT ではフォントが縦書きであると示されるが、Windows は横書きで描画する。
| プラグイン / モジュール | gdi32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の gdi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_gdi32_gen2.hs |