Bagikan melalui


fungsi HT_ComputeRGBGammaTable (winddi.h)

Fungsi HT_ComputeRGBGammaTable menyebabkan GDI menghitung intensitas merah, hijau, dan biru perangkat berdasarkan angka gamma.

Sintaks

LONG HT_ComputeRGBGammaTable(
  [in]  USHORT GammaTableEntries,
  [in]  USHORT GammaTableType,
  [in]  USHORT RedGamma,
  [in]  USHORT GreenGamma,
  [in]  USHORT BlueGamma,
  [out] LPBYTE pGammaTable
);

Parameter

[in] GammaTableEntries

Menentukan jumlah total langkah dalam tabel untuk setiap intensitas merah, hijau, dan biru. Nilai ini harus lebih besar dari 1 dan kurang dari atau sama dengan 256 (yaitu, 2 <= GammaTableEntries<= 256). Misalnya, nilai 256 berarti ada 256 entri merah, 256 entri hijau, dan 256 entri biru dalam tabel gamma.

[in] GammaTableType

Menentukan organisasi pGammaTable. Jenis tabel yang valid adalah:

GammaTableType Makna
0 Nilai merah, hijau, dan biru tabel gamma saling bersatu. Setiap langkah gamma adalah 3 byte; 1 byte masing-masing untuk merah, hijau, dan biru.
1 Tabel merah, hijau, dan biru dikemas secara terpisah; artinya, seluruh tabel merah diikuti oleh seluruh tabel hijau, yang diikuti oleh seluruh tabel biru. Masing-masing entri adalah 1 byte, membuat masing-masing subtabel total byte GammaTableEntries panjangnya.

[in] RedGamma

Menentukan nilai gamma merah. Nilai USHORT ini ditafsirkan sebagai angka riil yang empat digit paling tidak signifikan berada di sebelah kanan titik desimal (tersirat). Misalnya, nilai gamma 10000 mewakili angka riil 1.0000, dan 12345 mewakili 1,2345. Nilai gamma minimum yang diizinkan adalah 0,0000, dan nilai maksimum yang diizinkan adalah 6,5535.

[in] GreenGamma

Menentukan nilai gamma hijau. Nilai USHORT ini ditafsirkan sebagai angka riil yang empat digit paling tidak signifikan berada di sebelah kanan titik desimal (tersirat). Misalnya, nilai gamma 10000 mewakili angka riil 1.0000, dan 12345 mewakili 1,2345. Nilai gamma minimum yang diizinkan adalah 0,0000, dan nilai maksimum yang diizinkan adalah 6,5535.

[in] BlueGamma

Menentukan nilai gamma biru. Nilai USHORT ini ditafsirkan sebagai angka riil yang empat digit paling tidak signifikan berada di sebelah kanan titik desimal (tersirat). Misalnya, nilai gamma 10000 mewakili angka riil 1.0000, dan 12345 mewakili 1,2345. Nilai gamma minimum yang diizinkan adalah 0,0000, dan nilai maksimum yang diizinkan adalah 6,5535.

[out] pGammaTable

Penunjuk ke array byte di mana intensitas merah, hijau, dan biru tabel gamma akan ditulis. Tabel yang dikembalikan diatur seperti yang ditentukan oleh parameter GammaTableType .

Nilai kembali

Nilai yang dikembalikan adalah jumlah entri gamma yang ditulis ke pGammaTable; setelah berhasil, nilai ini sama dengan GammaTableEntries. Jika GammaTableEntries kurang dari 2 atau lebih besar dari 256, nilai yang dikembalikan adalah 0.

Intensitas merah, hijau, dan biru dikembalikan dalam rentang pGammaTable dari 0 hingga 255.

Keterangan

Rutinitas layanan halftone GDI menggunakan palet khusus untuk melakukan halftoning. Jika perangkat memilih palet 8-bit per piksel dari kumpulan warna perangkat 24-bit untuk permukaan jenis 16-bit atau 24-bit, GDI mengasumsikan langkah-langkah warna merah, hijau, dan biru; masing-masing memiliki kecerahan yang sama.

GDI menyediakan layanan ini sehingga driver dapat mengkueri palet halftone 8-bit per piksel yang digunakan oleh GDI atau gamma komputasi yang diperbaiki dan menyeimbangkan intensitas warna RGB untuk perangkat.

Persyaratan

   
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