Struktur LOGCOLORSPACEA (wingdi.h)
Struktur
Sintaksis
typedef struct tagLOGCOLORSPACEA {
DWORD lcsSignature;
DWORD lcsVersion;
DWORD lcsSize;
LCSCSTYPE lcsCSType;
LCSGAMUTMATCH lcsIntent;
CIEXYZTRIPLE lcsEndpoints;
DWORD lcsGammaRed;
DWORD lcsGammaGreen;
DWORD lcsGammaBlue;
CHAR lcsFilename[MAX_PATH];
} LOGCOLORSPACEA, *LPLOGCOLORSPACEA;
Anggota
lcsSignature
Tanda tangan ruang warna. Saat ini, anggota ini harus selalu diatur ke LCS_SIGNATURE.
lcsVersion
Nomor versi; harus 0x400.
lcsSize
Ukuran struktur ini, dalam byte.
lcsCSType
Jenis ruang warna. Anggota bisa menjadi salah satu nilai berikut.
Nilai | Arti |
---|---|
LCS_CALIBRATED_RGB | Nilai warna adalah nilai RGB yang dikalibrasi. Nilai diterjemahkan menggunakan titik akhir yang ditentukan oleh lcsEndpoints anggota sebelum diteruskan ke perangkat. |
LCS_sRGB | Nilai warna adalah nilai sRGB. |
LCS_WINDOWS_COLOR_SPACE | Nilai warna adalah nilai warna ruang warna default Windows. |
Jika LCS_CALIBRATED_RGB tidak ditentukan, lcsEndpoints anggota diabaikan.
lcsIntent
Metode pemetaan gamut. Anggota ini bisa menjadi salah satu nilai berikut.
Nilai | Maksud | Nama ICC | Arti |
---|---|---|---|
LCS_GM_ABS_ |
Korek api | Colorimetric Absolut | Pertahankan titik putih. Cocokkan warna dengan warna terdekatnya di gamut tujuan. |
LCS_GM_ |
Grafis | Saturasi | Pertahankan kejenuhan. Digunakan untuk bagan bisnis dan situasi lain di mana warna yang tidak terikat diperlukan. |
LCS_GM_ |
Bukti | Colorimetric Relatif | Pertahankan kecocokan colorimetric. Digunakan untuk desain grafis dan warna bernama. |
LCS_GM_ |
Gambaran | Persepsi | Pertahankan kontras. Digunakan untuk foto dan gambar alami. |
lcsEndpoints
Titik akhir merah, hijau, biru.
lcsGammaRed
Skala koordinat merah.
lcsGammaGreen
Skala koordinat hijau.
lcsGammaBlue
Skala koordinat biru.
lcsFilename[MAX_PATH]
String null-terminated yang menamai file profil warna. Anggota ini biasanya diatur ke nol, tetapi dapat digunakan untuk mengatur ruang warna persis seperti yang ditentukan oleh profil warna. Ini berguna untuk perangkat yang memasukkan nilai warna untuk printer tertentu, atau saat menggunakan pencocok warna gambar yang dapat diinstal. Jika profil warna ditentukan, semua anggota lain dari struktur ini harus diatur ke nilai yang wajar, bahkan jika nilainya tidak sepenuhnya akurat.
Komentar
Seperti palet, tetapi tidak seperti pena dan kuas, pointer harus diteruskan saat membuat LogColorSpace.
Jika anggota lcsCSType
Format bit DWORD yang diperlukan untuk lcsGammaRed, lcsGammaGreen, dan lcsGammaBlue adalah bilangan bulat titik tetap 8,8 yang digeser kiri oleh 8 bit. Ini berarti 8 bit bilangan bulat diikuti oleh 8 bit pecahan. Memperhitungkan pergeseran bit, format DWORD 32-bit yang diperlukan adalah:
00000000nnnnnnnnffffffffffff000000000
Setiap kali anggota
Hubungan antara nilai tri-stimulus X,Y,Z dan nilai kromatikitas x,y,z adalah sebagai berikut:
x = X/(X+Y+Z)
y = Y/(X+Y+Z)
z = Z/(X+Y+Z)
Jika anggota lcsCSType diatur ke LCS_sRGB atau LCS_WINDOWS_COLOR_SPACE, anggota lain dari struktur ini diabaikan, dan ICM menggunakan ruang warna sRGB. Aplikasi masih harus menginisialisasi sisa struktur karena CreateProfileFromLogColorSpace mengabaikan anggota lcsCSType dan menggunakan lcsEndpoints, lcsGammaRed, lcsGammaGreen, lcsGammaBlue untuk membuat profil, yang mungkin tidak diinisialisasi jika LCS_sRGB atau LCS_WINDOWS_COLOR_SPACE ruang warna.
Nota
Header wingdi.h mendefinisikan LOGCOLORSPACE sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Header |
wingdi.h |
Lihat juga
CMYK
RGB