GetEnhMetaFilePaletteEntries 関数は、指定拡張メタファイルから任意のパレットエントリを取得する。
GetEnhMetaFilePaletteEntries hemf, nNumEntries, lpPaletteEntries
hemf : [intptr] 拡張メタファイルのハンドル。 nNumEntries : [int] 任意のパレットから取得するエントリ数。 lpPaletteEntries : [var] パレットカラーを受け取る PALETTEENTRY 構造体の配列へのポインタ。配列は cEntries パラメータで指定されたエントリ数以上の構造体を含んでいなければならない。
(プラグイン / モジュール : gdi32.dll)
GetEnhMetaFilePaletteEntries 関数は、指定拡張メタファイルから任意のパレットエントリを取得する。 [戻り値] 配列ポインタが NULL で拡張メタファイルに任意のパレットが含まれている場合、戻り値はメタファイルのパレット内のエントリ数である。配列ポインタが有効で任意のパレットが含まれている場合、戻り値はコピーされたエントリ数である。メタファイルに任意のパレットが含まれていない場合、戻り値は 0 である。それ以外の場合は GDI_ERROR である。 [備考] アプリケーションは、画像を作成してメタファイルに保存する前に CreatePalette および SetPaletteEntries 関数を呼び出すことで、拡張メタファイルに任意のパレットを格納できる。これにより、画像がさまざまなデバイスで表示されるときに一貫した色を得ることができる。拡張メタファイルに格納された画像を表示するアプリケーションは、GetEnhMetaFilePaletteEntries 関数を呼び出して任意のパレットの存在を確認できる。存在する場合、アプリケーションは再度この関数を呼び出してパレットエントリを取得し、CreatePalette を使って論理パレットを作成し、SelectPalette でデバイスコンテキストに選択し、RealizePalette で実体化する。論理パレットが実体化された後、PlayEnhMetaFile 関数を呼び出すと元の色で画像が表示される。
| プラグイン / モジュール | 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 |