Bagikan melalui


Fungsi SetDeviceGammaRamp (wingdi.h)

Fungsi SetDeviceGammaRamp mengatur ramp gamma pada papan tampilan warna langsung yang memiliki driver yang mendukung landai gamma yang dapat diunduh di perangkat keras.

Penting

Kami sangat menyarankan Agar Anda tidak menggunakan API ini. Penggunaan API ini tunduk pada batasan utama:

  • SetDeviceGammaRamp menerapkan heuristik untuk memeriksa apakah ramp yang disediakan akan menghasilkan layar yang tidak dapat dibaca. Jika ramp melanggar heuristik tersebut, maka fungsi gagal secara diam-diam (yaitu, mengembalikan TRUE, tetapi tidak mengatur ramp Anda). Untuk alasan itu, Anda tidak dapat mengharapkan untuk menggunakan fungsi ini untuk mengatur sembarang ramp gamma arbitrer . Secara khusus, heuristik mencegah landaian yang akan mengakibatkan hampir semua piksel mendekati satu nilai (seperti layar penuh hitam/putih) karena ini dapat mencegah pengguna memulihkan layar.

  • Karena sifat global fungsi, aplikasi lain pada sistem dapat, kapan saja, menimpa tanjakan apa pun yang telah Anda tetapkan. Dalam beberapa kasus, sistem operasi itu sendiri dapat mencadangkan penggunaan fungsi ini, menyebabkan tanjakan yang ada ditimpa. Ramp gamma juga diatur ulang pada sebagian besar peristiwa tampilan (menghubungkan/memutuskan monitor, perubahan resolusi, dll.). Jadi Anda tidak dapat yakin bahwa setiap tanjakan yang Anda tetapkan berlaku.

  • API ini memiliki perilaku yang tidak terdefinisi dalam mode HDR.

  • API ini memiliki interaksi yang tidak terdefinisi dengan solusi kalibrasi warna bawaan dan pihak ketiga.

Untuk kalibrasi warna, kami sarankan Anda membuat profil International Color Consortium (ICC), dan membiarkan OS menerapkan profil. Untuk skenario produsen peralatan asli (OEM) canggih, ada model driver perangkat yang dapat Anda gunakan untuk menyesuaikan kalibrasi warna secara lebih langsung. Lihat Sistem Warna Windows untuk informasi tentang mengelola profil warna.

Untuk pemfilteran cahaya biru, Windows sekarang menyediakan dukungan bawaan yang disebut Night Light. Sebaiknya arahkan pengguna ke fitur ini.

Untuk adaptasi warna (misalnya, menyesuaikan kalibrasi warna berdasarkan sensor cahaya sekitar), Windows sekarang menyediakan dukungan bawaan, yang kami sarankan untuk digunakan oleh OEM.

Untuk efek filter kustom, ada berbagai filter warna aksesibilitas bawaan untuk membantu berbagai kasus.

Sintaks

BOOL SetDeviceGammaRamp(
  HDC    hdc,
  LPVOID lpRamp
);

Parameter

hdc

Menentukan konteks perangkat dari papan tampilan warna langsung yang dimaksud.

lpRamp

Arahkan ke buffer yang berisi ramp gamma yang akan diatur. Ramp gamma ditentukan dalam tiga array masing-masing dari 256 elemen WORD , yang berisi pemetaan antara nilai RGB dalam buffer bingkai dan nilai digital-analog-converter (DAC ). Urutan array adalah merah, hijau, biru. Nilai RGB harus disimpan dalam bit yang paling signifikan dari setiap WORD untuk meningkatkan kemandirian DAC.

Mengembalikan nilai

Jika fungsi ini berhasil, nilai yang dikembalikan adalah TRUE.

Jika fungsi ini gagal, nilai yang dikembalikan adalah FALSE.

Keterangan

Mode tampilan warna langsung tidak menggunakan tabel pencarian warna dan biasanya 16, 24, atau 32 bit. Tidak semua papan video warna langsung mendukung landai gamma yang dapat dimuat. SetDeviceGammaRamp hanya berhasil untuk perangkat dengan driver yang mendukung landaian gamma yang dapat diunduh di perangkat keras.

Catatan

API ini dapat memakan waktu yang tidak sepele untuk dijalankan. Mungkin perlu waktu selama 200ms untuk kembali pada beberapa perangkat keras.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wingdi.h
Pustaka Gdi32.lib
DLL Gdi32.dll

Lihat juga