Bagikan melalui


Fungsi EngCreatePalette (winddi.h)

Fungsi EngCreatePalette mengirimkan permintaan ke GDI untuk membuat palet RGB.

Sintaks

ENGAPI HPALETTE EngCreatePalette(
  [in] ULONG iMode,
  [in] ULONG cColors,
  [in] ULONG *pulColors,
  [in] FLONG flRed,
  [in] FLONG flGreen,
  [in] FLONG flBlue
);

Parameter

[in] iMode

Menentukan bagaimana palet akan ditentukan. Parameter ini bisa menjadi salah satu nilai berikut:

Nilai Makna
PAL_BITFIELDS Palet didefinisikan oleh parameter flRed, flGreen, dan flBlue .
PAL_BGR Perangkat menerima warna RGB secara langsung, dengan B (biru) sebagai byte yang paling tidak signifikan.
PAL_CMYK Perangkat menerima warna CMYK secara langsung, dengan C (sian) sebagai byte yang paling tidak signifikan.
PAL_INDEXED Array warna RGB disediakan dengan cColors dan pulColors.
PAL_RGB Perangkat menerima warna RGB secara langsung, dengan R (merah) sebagai byte yang paling tidak signifikan.

[in] cColors

Jika parameter iMode PAL_INDEXED, cColors menentukan jumlah warna yang disediakan dalam array yang diacu oleh pulColors. Jika tidak, parameter ini harus nol.

[in] pulColors

Arahkan ke awal array nilai ULONG jika iMode PAL_INDEXED. Urutan rendah 3 byte dari setiap ULONG menentukan warna RGB di palet.

[in] flRed

Jika parameter iMode PAL_BITFIELDS, parameter flRed, flGreen , dan flBlue adalah masker yang menunjukkan bit mana yang sesuai dengan merah, hijau, dan biru. Setiap masker harus terdiri dari bit yang berdampingan dan tidak boleh tumpang tindih dengan masker lainnya. Semua kombinasi bitfield didukung oleh GDI.

[in] flGreen

Jika parameter iMode PAL_BITFIELDS, parameter flRed, flGreen , dan flBlue adalah masker yang menunjukkan bit mana yang sesuai dengan merah, hijau, dan biru. Setiap masker harus terdiri dari bit yang berdampingan dan tidak boleh tumpang tindih dengan masker lainnya. Semua kombinasi bitfield didukung oleh GDI.

[in] flBlue

Jika parameter iMode PAL_BITFIELDS, parameter flRed, flGreen , dan flBlue adalah masker yang menunjukkan bit mana yang sesuai dengan merah, hijau, dan biru. Setiap masker harus terdiri dari bit yang berdampingan dan tidak boleh tumpang tindih dengan masker lainnya. Semua kombinasi bitfield didukung oleh GDI.

Mengembalikan nilai

Nilai yang dikembalikan adalah handel ke palet baru jika fungsi berhasil. Jika tidak, ini adalah nol, dan kode kesalahan dicatat.

Keterangan

Driver dapat mengaitkan palet baru dengan perangkat dengan mengembalikan pointer ke palet dalam struktur DEVINFO .

Palet PAL_INDEXED yang terkait dengan perangkat harus memiliki entri indeks pertama yang diatur ke hitam (merah = 0, hijau = 0, biru = 0) dan entri terakhirnya diatur ke putih (255, 255, 255). Semua entri lain harus diatur sehingga entri yang indeksnya adalah pelengkap satu sama lain memiliki warna yang sangat kontras. Misalnya, jika entri 0x9 dari 16 palet entri diatur ke hijau murni (0.255,0), entri 0x6 (=~0x9) harus diatur ke warna yang kontras dengan hijau, seperti ungu gelap (128,0,128). Mengatur entri dengan cara ini memungkinkan operasi raster XOR berperilaku wajar. Anda harus menghapus palet ketika Anda tidak lagi membutuhkannya dengan menggunakan EngDeletePalette.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows 2000 dan versi yang lebih baru dari sistem operasi Windows.
Target Platform Universal
Header winddi.h (termasuk Winddi.h)
Pustaka Win32k.lib
DLL Win32k.sys

Lihat juga

DEVINFO

DrvSetPalette

EngDeletePalette