Bagikan melalui


Fungsi Manajemen Profil

Fungsi Manajemen Profil

Fungsi API berikut berguna dalam manajemen profil.

Fungsi Deskripsi
AssociateColorProfileWithDeviceW Mengaitkan profil warna tertentu dengan perangkat tertentu.
[CreateProfileFromLogColorSpaceW] ((/windows/win32/api/icm/nf-icm-createprofilefromlogcolorspacew) Mengonversi ruang warna logis ke profil perangkat.
DisassociateColorProfileFromDeviceW Memisahkan profil warna tertentu dengan perangkat tertentu pada komputer tertentu.
EnumColorProfilesW Menghitung semua profil yang memenuhi kriteria enumerasi yang diberikan.
GetColorDirectoryW Mengambil jalur direktori Windows COLOR pada komputer tertentu.
GetDeviceGammaRamp Mendapatkan ramp gamma dari papan tampilan warna langsung.
GetStandardColorSpaceProfileW Mengambil profil warna yang terdaftar untuk ruang warna standar yang ditentukan.
InstallColorProfileW Menginstal profil tertentu untuk digunakan pada komputer tertentu. Profil juga disalin ke direktori COLOR.
RegisterCMMW Mengaitkan nilai identifikasi tertentu dengan pustaka tautan dinamis modul manajemen warna yang ditentukan (CMM DLL). Ketika ID ini muncul di profil warna, Windows kemudian dapat menemukan CMM yang sesuai sehingga dapat membuat transformasi.
SetDeviceGammaRamp Mengatur ramp gamma pada papan tampilan warna langsung.
SetStandardColorSpaceProfileW Mendaftarkan profil tertentu untuk ruang warna standar tertentu. Profil dapat dikueri menggunakan GetStandardColorSpaceProfileW.
UninstallColorProfileW Menghapus profil warna tertentu dari komputer tertentu. File terkait secara opsional dihapus dari sistem.
UnregisterCMMW Memisahkan nilai ID tertentu dari pustaka tautan dinamis modul manajemen warna tertentu (CMM DLL).
WcsAssociateColorProfileWithDevice Mengaitkan profil warna WCS tertentu dengan perangkat tertentu.
WcsCreateIccProfile Mengonversi profil WCS menjadi profil ICC.
WcsDisassociateColorProfileFromDevice Memisahkan profil warna WCS tertentu dengan perangkat tertentu pada komputer tertentu.
WcsEnumColorProfiles Menghitung semua profil warna yang memenuhi kriteria enumerasi dalam cakupan manajemen profil yang ditentukan.
WcsEnumColorProfilesSize Mengembalikan ukuran, dalam byte, dari buffer yang diperlukan oleh fungsi WcsEnumColorProfiles untuk menghitung profil warna.
WcsGetDefaultColorProfile Mengambil profil warna default untuk perangkat, atau default independen perangkat jika perangkat tidak ditentukan.
WcsGetDefaultColorProfileSize Mengembalikan ukuran, dalam byte, dari nama profil warna default untuk perangkat, termasuk terminator NULL .
WcsGetDefaultRenderingIntent Mengambil niat penyajian default dalam cakupan manajemen profil yang ditentukan.
WcsGetUsePerUserProfiles Menentukan apakah pengguna telah memilih untuk menggunakan daftar asosiasi profil per pengguna untuk perangkat yang ditentukan.
WcsOpenColorProfileW Membuat handel ke profil warna tertentu.
WcsSetDefaultColorProfile Mengatur nama profil warna default dari jenis profil yang ditentukan dalam lingkup manajemen profil yang ditentukan.
WcsSetDefaultRenderingIntent Mengatur niat penyajian default dalam cakupan manajemen profil yang ditentukan.
WcsSetUsePerUserProfiles Memungkinkan pengguna menentukan apakah akan menggunakan daftar asosiasi profil per pengguna untuk perangkat yang ditentukan.

 

Fungsi Konsumsi Profil

API konsumsi profil adalah API di ICM2 yang mengambil profil XML ICC atau WCS, handel profil, atau niat penyajian sebagai parameter, dan sekumpulan API baru untuk dukungan profil WCS untuk kode manajemen warna aplikasi.

 

Profil dan Fungsi Manajemen Profil

Alur kerja manajemen profil didasarkan pada API ICM2 yang ada yang ditambah untuk menyediakan fungsionalitas tambahan untuk merevisi kode aplikasi.

Profil berisi informasi yang digunakan oleh algoritma pemrosesan warna untuk menerjemahkan warna di antara ruang warna yang berbeda. Manajemen profil menyediakan cara untuk mengkueri dan menentukan profil mana yang digunakan pada tahap yang berbeda oleh model pemrosesan warna untuk mengelola output warna dari berbagai perangkat periferal dengan karakteristik warna yang beragam.

Manajemen profil menyediakan serangkaian fungsionalitas berikut:

 

  1. Menginstal profil warna untuk digunakan dalam sistem.

 

  1. Mengaitkan satu atau beberapa profil warna yang diinstal dengan perangkat tertentu.

 

  1. Memilih profil warna default dari jenis tertentu di antara profil yang tersedia untuk digunakan dalam tahap pemrosesan warna tertentu. Ini bisa untuk perangkat di antara profil yang terkait dengannya, atau di antara profil yang diinstal dalam sistem dan tidak spesifik perangkat.

 

  1. Menghitung profil warna yang memenuhi kriteria tertentu di antara profil yang diinstal dalam sistem.

Ekstensi nama file profil WCS adalah ".cdmp" untuk DMP, ".camp" untuk CAMP, dan ".gmmp" untuk GMMP.

 

Manajemen profil per pengguna dan mengaktifkan eksekusi dalam konteks LUA

Tujuan desain yang dijelaskan dalam dokumen saat ini adalah sebagai berikut:

 

  1. Implementasi ICM2 warisan tidak memberikan dukungan untuk manajemen profil per pengguna. Pengguna yang berbeda tidak dapat memiliki pengaturan profil mereka sendiri. Di Vista, infrastruktur manajemen profil WCS memungkinkan pengguna mengonfigurasi pengaturan profil individual untuk sebagian besar fungsionalitas.

 

  1. Semua API manajemen profil ICM2 warisan memodifikasi pengaturan di seluruh sistem dan memerlukan hak istimewa administratif. Di Windows Vista, semua pengguna berjalan di pengaturan Akun Pengguna Dengan hak istimewa terkecil (LUA) sebagian besar waktu, dan administrator dapat meningkatkan hak istimewa secara selektif untuk menjalankan aplikasi yang memodifikasi pengaturan di seluruh sistem. Dalam manajemen profil WCS, semua pengaturan profil per pengguna dapat dikonfigurasi dalam konteks LUA. Aplikasi manajemen profil dapat berjalan sebagai pengaturan LUA, meningkatkan cakupan penggunaannya dan memastikan bahwa keamanan sistem tidak disusupi.

Manajemen profil di Vista menyediakan penyempurnaan berikut atas infrastruktur ICM2 warisan:

 

  1. Ini memungkinkan asosiasi profil dengan perangkat, pengaturan profil default, dan enumerasi profil dalam cakupan per pengguna dan di seluruh sistem.

 

  1. Menginstal profil tetap lebar dan memerlukan hak istimewa administrator. Ini konsisten dengan penginstalan profil selama penginstalan perangkat karena penginstalan perangkat luas sistem dan memerlukan hak istimewa administratif.

 

Apakah perangkat dapat diinstal dari konteks LUA khusus untuk apa yang didukung untuk kelas perangkat tersebut. Misalnya, di Vista, dimungkinkan untuk melakukan penginstalan printer dari konteks LUA jika pengguna telah diberikan hak untuk menyalin file ke penyimpanan driver oleh administrator domain menggunakan kebijakan penyimpanan driver. Infrastruktur manajemen profil warna tidak perlu melakukan hal khusus dalam hal ini karena penginstalan terjadi dalam konteks penampung.

 

  1. Memodifikasi pengaturan profil dalam cakupan per pengguna dapat dilakukan dalam konteks LUA; modifikasi di seluruh sistem memerlukan hak administratif. Operasi manajemen profil yang memerlukan membaca informasi konfigurasi dapat dilakukan dalam konteks LUA untuk pengaturan per pengguna dan di seluruh sistem.

Cakupan manajemen profil menunjukkan cakupan operasi yang dilakukan; baik per pengguna atau lebar sistem.

Untuk setiap operasi, ditunjukkan apakah dapat dilakukan dari konteks LUA. Jika operasi tidak dapat dilakukan dalam konteks LUA, API manajemen profil yang sesuai mengembalikan kegagalan dengan akses ditolak. Aplikasi yang menggunakan API, seperti Color Management Panel Kontrol, dapat memungkinkan pengguna untuk meningkatkan ke konteks administratif (menggunakan OTS atau UI Persetujuan), lalu memanggil API dari konteks yang ditingkatkan sehingga operasi akan berhasil.

Operasi

Cakupan Manajemen Profil

Pra-kondisi

Pasca-kondisi

Dapat dieksekusi dalam konteks LUA

${ROWSPAN2}$Install profile${REMOVE}$

Lebar sistem

Profil disalin, diinstal ke dalam sistem, dan tersedia untuk digunakan. Profil dapat dijumlahkan dalam cakupan pengguna di seluruh sistem dan saat ini untuk semua pengguna.

Selama penginstalan driver perangkat, diatur oleh kebijakan penginstalan driver. Tidak, lainnya.

Pengguna saat ini

Tidak didukung

${ROWSPAN2}$Uninstall profile${REMOVE}$

Lebar sistem

Profil diinstal dalam sistem

Profil dihapus dari sistem dan secara opsional dihapus dari penyimpanan profil. Profil tidak lagi tersedia untuk digunakan dan tidak dapat dijumlahkan dalam cakupan apa pun.

Tidak

Pengguna saat ini

Tidak didukung

${ROWSPAN2}$Associate profil dengan device${REMOVE}$

Lebar sistem

Profil diinstal dan berjenis ICC atau CDMP

Profil tersedia untuk digunakan dengan perangkat oleh semua pengguna. Ini dapat dijumlahkan, dalam cakupan di seluruh sistem dan juga cakupan pengguna saat ini untuk semua pengguna, seperti yang terkait dengan perangkat.

Tidak

Pengguna saat ini

Profil terinstal. Tidak masalah apakah profil sudah dikaitkan dengan perangkat dalam cakupan di seluruh sistem dan berjenis ICC atau CDMP.

Profil tersedia untuk digunakan dengan perangkat oleh pengguna saat ini. Ini hanya dapat dijumlahkan dalam cakupan pengguna saat ini (kecuali ada asosiasi di seluruh sistem juga) serta yang terkait dengan perangkat.

Ya

${ROWSPAN2}$Disassociate profil dari perangkat${REMOVE}$

Lebar sistem

Profil dikaitkan dengan perangkat dalam cakupan di seluruh sistem dan berjenis ICC atau CDMP

Profil tidak lagi tersedia untuk digunakan (kecuali untuk pengguna yang memiliki asosiasi ini dalam cakupan pengguna mereka saat ini juga). Ini tidak dapat dijumlahkan dalam cakupan di seluruh sistem. Namun, dapat dijumlahkan dalam cakupan pengguna saat ini, untuk pengguna yang memiliki asosiasi ini dalam cakupannya.

Tidak

Pengguna saat ini

Profil dikaitkan dengan perangkat dalam cakupan pengguna saat ini (terlepas dari apakah itu dikaitkan dalam cakupan di seluruh sistem) dan berjenis ICC atau CDMP.

Profil tidak lagi tersedia untuk digunakan, atau dapat dijumlahkan seperti yang terkait dengan perangkat, oleh pengguna saat ini (kecuali jika juga dikaitkan dalam cakupan di seluruh sistem ke perangkat).

Ya

${ROWSPAN2}$Set profil untuk tipe (DMP atau ICC) sebagai default untuk perangkat${REMOVE}$

Lebar sistem

Profil berjenis ICC atau CDMP

Profil digunakan secara default, untuk jenis tertentu dengan perangkat, untuk semua pengguna kecuali bagi mereka yang telah mengambil alih pengaturan ini dalam cakupan pengguna mereka saat ini. (Profil diinstal dan dikaitkan dengan lebar sistem perangkat, jika belum terjadi.)

Tidak

Pengguna saat ini

Profil berjenis ICC atau CDMP

Profil digunakan secara default untuk jenis tertentu dengan perangkat jika pengguna saat ini, terlepas dari default seluruh sistem untuk ini. (Profil diinstal dan terkait dengan perangkat untuk pengguna saat ini, jika itu belum terjadi.)

Ya, jika profil sudah diinstal

${ROWSPAN2}$Set profil untuk kombinasi tipe (ICC, DMP, CAMP, GMMP) dan subjenis sebagai default global${REMOVE}$

Lebar sistem

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan perangkat.

Profil digunakan secara default untuk jenis tertentu. Pengguna dapat mengambil alih pengaturan ini dalam cakupan pengguna saat ini. (Profil diinstal, jika itu belum terjadi.)

Tidak

Pengguna saat ini

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan perangkat.

Profil digunakan secara default untuk jenis tertentu untuk pengguna saat ini. (Profil diinstal, jika itu belum terjadi.)

Ya, jika profil sudah diinstal.

${ROWSPAN2}$Erase penimpaan pengguna saat ini untuk pengaturan profil default tertentu, sehingga default sistem selalu digunakan (sebagai fallback) bahkan untuk cakupan pengguna saat ini.${REMOVE}$

Lebar sistem

Tidak berlaku

Pengguna saat ini

Bahkan untuk kueri pengguna saat ini pada pengaturan profil default, pengaturan di seluruh sistem dikembalikan untuk digunakan.

Ya

${ROWSPAN2}$Enumerate profil yang diinstal memenuhi kriteria tertentu (seperti kelas perangkat, kelas profil, dll.) ${REMOVE}$

Lebar sistem

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan dan dijumlahkan untuk perangkat.

Profil yang diinstal dan memenuhi kriteria yang ditentukan dalam cakupan di seluruh sistem dijumlahkan.

Ya

Pengguna saat ini

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan perangkat dan dengan demikian dijumlahkan untuk perangkat.

Profil yang diinstal dan memenuhi kriteria yang ditentukan dalam cakupan di seluruh sistem dijumlahkan.

Ya

${ROWSPAN2}$Enumerate profil yang terkait dengan perangkat tertentu yang memenuhi kriteria tertentu, seperti kelas perangkat, dan kelas profil${REMOVE}$

Lebar sistem

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan dan dijumlahkan untuk perangkat.

Profil yang terkait dengan perangkat dalam cakupan di seluruh sistem dan memenuhi kriteria yang ditentukan dalam cakupan di seluruh sistem dijumlahkan.

Ya

Pengguna saat ini

Hanya profil ICC dan CDMP yang dapat dikaitkan dengan dan dijumlahkan untuk perangkat.

Profil yang tersedia seperti yang terkait dengan perangkat dalam cakupan pengguna saat ini, yang mencakup asosiasi di seluruh sistem dan memenuhi kriteria yang ditentukan dalam cakupan pengguna saat ini dijumlahkan.

Ya

 

Jenis profil warna yang valid disediakan oleh enumerasi COLORPROFILETYPE.

Subjenis profil warna yang valid disediakan oleh enumerasi COLORPROFILESUBTYPE.

Kombinasi tipe profil/subjenis yang valid diperlihatkan dalam tabel berikut.

COLORPROFILETYPE

Valid COLORPROFILESUBTYPE

Catatan

Perangkat Default

Global Default

Penggunaan yang Dimaksudkan

Penggunaan yang Dimaksudkan

CPT_ICC

CPST_NONE

Mendapatkan/Mengatur profil ICC default yang terkait dengan perangkat

CPST_RGBWorkingSpace atau CPST_CustomWorkingSpace

Dapatkan/Atur profil ICC sebagai RGB global atau profil ruang kerja kustom. Lihat Catatan.

COLORPROFILETYPE CPT_ICC dan CPT_DMP saling eksklusif. Profil warna default yang Anda tetapkan untuk ruang kerja tertentu (RGB atau Kustom) dapat berupa profil ICC atau profil DMP, tetapi tidak keduanya.

CPT_DMP

CPST_NONE

Dapatkan/Atur profil DMP default yang terkait dengan perangkat

CPST_RGBWorkingSpace atau CPST_CustomWorkingSpace

Dapatkan/Atur profil DMP sebagai RGB global atau profil ruang kerja kustom. Lihat Catatan.

COLORPROFILETYPE CPT_ICC dan CPT_DMP saling eksklusif. Profil warna default yang Anda tetapkan untuk ruang kerja tertentu (RGB atau Kustom) dapat berupa profil ICC atau profil DMP, tetapi tidak keduanya.

 

Catatan

Ketika WcsSetDefaultColorProfile dipanggil untuk mengatur profil DMP sebagai profil default untuk ruang kerja RGB atau ruang kerja kustom, hanya profil DMP yang berjenis RGBVirtualDevice, LCD, atau CRT yang valid.

 

Ketika WcsSetDefaultColorProfile dipanggil untuk mengatur profil ICC sebagai profil default untuk ruang kerja RGB atau ruang kerja kustom, hanya profil ICC yang kelasnya "spac" atau "disp," dan yang ruang warnanya adalah "RGB" yang valid.

 

Arsitektur dirancang sesuai dengan persyaratan operasi seperti yang disebutkan dalam enumerasi dan tabel di atas.

Lapisan API publik manajemen profil

Karena cakupan manajemen profil tidak didukung oleh API ICM2 warisan, diperlukan serangkaian API manajemen profil WCS baru yang menentukan cakupan manajemen profil sebagai lebar sistem atau pengguna saat ini. ? API ICM2 warisan terus didukung untuk kompatibilitas mundur, dan bekerja pada cakupan manajemen profil yang implisit untuk panggilan. o API ICM2 yang berfungsi pada cakupan pengguna saat ini? Ini untuk operasi yang didukung untuk cakupan seluruh sistem dan pengguna saat ini dalam manajemen profil WCS. Panggilan API ICM2 warisan pada API WCS baru dengan cakupan manajemen profil sebagai pengguna saat ini. Ini masuk akal dari perspektif pengguna karena ini memungkinkan pengaturan per pengguna dari aplikasi warisan dan juga menjalankan sebagian besar operasi dalam konteks LUA. o API ICM2 yang bekerja pada cakupan di seluruh sistem? Ini untuk operasi (instal profil dan hapus instalan profil) yang hanya mendukung cakupan di seluruh sistem. Tidak ada API manajemen profil WCS baru yang dibuat dan API yang ada dapat dimodifikasi.

Implementasi yang mendasar dari operasi manajemen profil bekerja pada entitas data konfigurasi berikut untuk membuat konteks algoritma pemrosesan warna untuk menyediakan fungsionalitas manajemen warna. Keduanya adalah pengaturan khusus perangkat atau global (independen perangkat). o Data konfigurasi khusus perangkat: ? Daftar profil yang terkait dengan perangkat tertentu. ? Profil default untuk berbagai jenis profil yang terkait dengan perangkat. ? Mode pencocokan profil yang digunakan untuk enumerasi. o Data konfigurasi global: ? Daftar profil yang diinstal dalam sistem. ? Profil default global untuk jenis profil yang berbeda. ? Implementasi yang mendasar dari penyimpanan data konfigurasi mengambil cakupan penyimpanan untuk data konfigurasi (baik perangkat independen atau spesifik perangkat), yang dapat berupa seluruh sistem atau pengguna saat ini. Ini berbeda dari cakupan manajemen profil. Operasi dengan cakupan manajemen profil pengguna saat ini dapat menyebabkan pembacaan dari cakupan penyimpanan di seluruh sistem jika pengaturan pengguna saat ini untuk operasi tersebut tidak ada. ? Lapisan API ICM2/WCS memanggil lapisan penyimpanan ini untuk mendapatkan dan mengatur data dengan cakupan penyimpanan yang sesuai. Lapisan penyimpanan transparan untuk cakupan manajemen profil. Logika untuk menggabungkan data dari cakupan penyimpanan pengguna saat ini dan seluruh sistem untuk membuat atau memperbarui konfigurasi sesuai dengan cakupan manajemen profil yang ditentukan oleh pemanggil API. Logika ini ada di lapisan API ICM2/WCS.

Lapisan penyimpanan khusus perangkat

Penyimpanan untuk berbagai kelas perangkat seperti cetak, tangkapan, atau tampilan bisa berbeda satu sama lain. Misalnya, data konfigurasi untuk perangkat cetak harus disimpan menggunakan API cetak standar, seperti SetPrinterDataEx dan GetPrinterDataEx, untuk memungkinkan profil disalin dan pengaturan untuk ditransfer ke komputer klien selama koneksi Point-and-Print. ? Lapisan ini mengekspor fungsionalitas untuk membuka penyimpanan, mendapatkan data, mengatur data, dan menutup penyimpanan menggunakan antarmuka umum yang telah ditentukan sebelumnya sehingga lapisan penyimpanan konfigurasi manajemen profil dapat memanggilnya sambil transparan dengan cara data disimpan untuk perangkat tersebut.

Diagram berikut mengilustrasikan arsitektur ini.

Lapisan API Publik Manajemen Profil

${ROWSPAN2}$Legacy API ICM2 untuk operasi yang hanya mendukung cakupan manajemen profil di seluruh sistem di Vista (instal, hapus instalan, dan dapatkan direktori warna). Mereka memanggil lapisan penyimpanan konfigurasi dengan cakupan penyimpanan yang sesuai.${REMOVE}$

API ICM2 warisan untuk operasi yang mendukung cakupan manajemen profil seluruh sistem dan pengguna saat ini di Vista (semua operasi selain menginstal, menghapus, dan mendapatkan direktori warna). Mereka secara implisit bekerja pada cakupan pengguna saat ini, dan memanggil WCS API baru dengan cakupan manajemen profil sebagai pengguna saat ini.

WCS API baru dengan dukungan cakupan manajemen profil seluruh sistem dan pengguna saat ini. Mereka memanggil lapisan penyimpanan konfigurasi dengan cakupan penyimpanan yang sesuai.

 

Lapisan Penyimpanan Konfigurasi Manajemen Profil

Rutinitas konfigurasi global independen perangkat

Rutinitas konfigurasi khusus perangkat

${ROWSPAN3}$Profile penginstalan dan manajemen pengaturan profil default independen perangkat, didukung dalam cakupan penyimpanan di seluruh sistem dan pengguna saat ini.${REMOVE}$

Asosiasi perangkat dan manajemen pengaturan profil default khusus perangkat, didukung dalam cakupan penyimpanan pengguna di seluruh sistem dan saat ini.

lapisan Device-Specific Storage

Mencetak penyimpanan tertentu

Menampilkan penyimpanan tertentu

Mengambil penyimpanan tertentu

 

API ICM2 warisan untuk operasi yang hanya mendukung cakupan manajemen profil di seluruh sistem di Vista tidak memiliki perubahan perilaku. Operasi penginstalan dan penghapusan instalasi termasuk dalam kategori ini.

API ICM2 warisan untuk operasi yang mendukung cakupan manajemen profil seluruh sistem dan pengguna saat ini mengubah perilaku mereka untuk mengkueri dan mengonfigurasi pengaturan pengguna saat ini. Semua operasi selain menginstal dan menghapus instalan termasuk dalam kategori ini.