Bagikan melalui


Fungsi WcsOpenColorProfileW (icm.h)

Membuat handel ke profil warna tertentu.

Sintaks

HPROFILE WcsOpenColorProfileW(
  PPROFILE pCDMPProfile,
  PPROFILE pCAMPProfile,
  PPROFILE pGMMPProfile,
  DWORD    dwDesireAccess,
  DWORD    dwShareMode,
  DWORD    dwCreationMode,
  DWORD    dwFlags
);

Parameter

pCDMPProfile

Penunjuk ke WCS DMP atau struktur profil warna ICC yang menentukan profil. Anda dapat membebaskan penunjuk pCDMPProfile setelah membuat handel. Jika profil adalah ICC dan anggota dwType-nya diatur ke DONT_USE_EMBEDDED_WCS_PROFILES, WcsOpenColorProfile mengabaikan profil WCS yang disematkan dalam profil ICC.

pCAMPProfile

Penunjuk ke struktur profil yang menentukan profil model tampilan warna WCS (CAMP). Anda dapat membebaskan penunjuk pCAMPProfile setelah membuat handel. Jika NULL, CAMP default digunakan, dan pengaturan pengguna saat ini, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, digunakan saat mengkueri CAMP default.

pGMMPProfile

Penunjuk ke struktur profil yang menentukan profil model peta gamut WCS (GMMP). Anda dapat membebaskan penunjuk pGMMPProfile setelah membuat handel. Jika NULL, GMMP default untuk niat penyajian default digunakan, dan pengaturan pengguna saat ini, WCS_PROFILE_MANAGEMENT_SCOPE_CURRENT_USER, digunakan saat mengkueri GMMP default. Untuk deskripsi niat penyajian, lihat Niat Rendering.

dwDesireAccess

Nilai bendera yang menentukan cara mengakses profil warna yang ditentukan. Parameter ini harus mengambil salah satu nilai berikut:

Nilai Deskripsi
PROFILE_READ Menentukan bahwa profil warna terbuka untuk akses baca-saja.
PROFILE_READWRITE Menentukan bahwa profil warna terbuka untuk akses baca dan tulis. Nilai bendera ini diabaikan jika profil adalah profil WCS.

dwShareMode

Nilai bendera yang menentukan tindakan yang harus diambil saat membuka profil warna yang terkandung dalam file. Parameter ini harus mengambil salah satu nilai berikut, yang didefinisikan dalam winnt.h:

Nilai Deskripsi
FILE_SHARE_READ Menentukan bahwa Anda dapat melakukan operasi terbuka lainnya (untuk akses baca) pada profil.
FILE_SHARE_WRITE Menentukan bahwa Anda dapat melakukan operasi terbuka lainnya (untuk akses tulis) pada profil. Nilai bendera ini diabaikan ketika profil WCS dibuka.

dwCreationMode

Nilai bendera yang menentukan tindakan yang harus diambil saat membuka profil warna jika terkandung dalam file. Parameter ini harus mengambil salah satu nilai berikut, yang didefinisikan dalam winbase.h:

Nilai Deskripsi
CREATE_NEW Menentukan bahwa profil baru dibuat. Fungsi ini gagal jika profil sudah ada.
CREATE_ALWAYS Menentukan bahwa profil baru dibuat. Jika profil sudah ada, profil akan ditimpa.
OPEN_EXISTING Menentukan bahwa profil dibuka. Fungsi ini gagal jika profil tidak ada.
OPEN_ALWAYS Menentukan bahwa profil akan dibuka jika ada file International Color Consortium (ICC). Jika profil ICC tidak ada, WCS akan membuat profil ICC baru. Fungsi akan gagal untuk profil WCS jika bendera ini diatur dan profil WCS tidak ada.
TRUNCATE_EXISTING Menentukan bahwa profil akan dibuka dan dipotok menjadi nol byte. Fungsi gagal jika profil tidak ada.

dwFlags

Nilai bendera yang menentukan apakah akan menggunakan profil WCS yang disematkan. Parameter ini tidak berpengaruh kecuali pCDMProfile menentukan profil ICC yang berisi profil WCS yang disematkan.

Parameter ini mengambil salah satu nilai berikut:

Nilai Deskripsi
0 Menentukan bahwa profil WCS yang disematkan akan digunakan dan profil ICC yang ditentukan oleh pCDMPProfile akan diabaikan.
DONT_USE_EMBEDDED_WCS_PROFILES Menentukan bahwa profil ICC yang ditentukan oleh pCDMPProfile akan digunakan dan profil WCS yang disematkan akan diabaikan.

Mengembalikan nilai

Jika fungsi ini berhasil, nilai yang dikembalikan adalah handel profil warna yang dibuka.

Jika fungsi ini gagal, nilai yang dikembalikan adalah NULL.

Keterangan

API ini akan mengambil satu set DMP, CAMP, dan GMMP dan mengembalikan handel profil WCS. Nilai NULL untuk GMMP valid. Nilai NULL untuk CAMP akan diganti dengan nilai CAMP default.

API ini juga akan menerima profil ICC. Menggunakan profil ICC tidak menjamin pemrosesan oleh mesin WCS CITE. Mesin WCS hanya akan digunakan jika diteruskan setidaknya satu profil WCS. Alur kerja ICC murni akan konsisten dengan perilaku warisan.

Anda dapat menggunakan handel yang dikembalikan fungsi ini dalam fungsi manajemen profil warna lainnya.

dwCreationMode menandai CREATE_NEW, CREATE_ALWAYS, dan TRUNCATE_EXISTING akan selalu mengembalikan ICC HPROFILEs kosong. Jika ada bendera dwCreationMode lainnya, fungsi akan menentukan apakah profil tersebut adalah ICC atau WCS XML.

Dalam jalur kode ICC, ICC HPROFILE dikembalikan menggunakan bendera berbagi, akses, dan pembuatan yang diminta seperti yang ditentukan dalam tabel di atas.

Dalam jalur WCS, bendera dwCreationMode OPEN_ALWAYS akan gagal jika profil tidak ada, karena profil WCS tidak dapat dibuat atau diedit dalam arsitektur WCS (mereka harus diedit di luarnya, menggunakan MSXML6). Untuk alasan yang sama, bendera dwShareMode FILE_SHARE_WRITE, dan bendera dwDesiredAccess PROFILE_READWRITE diabaikan dalam jalur WCS.

Setelah handel ke profil warna dibuat, informasi apa pun yang digunakan untuk membuat handel tersebut dapat dihapus.

Gunakan fungsi CloseColorProfile untuk menutup handel objek yang dikembalikan oleh WcsOpenColorProfile.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header icm.h
Pustaka Mscms.lib
DLL Mscms.dll

Lihat juga