COLORMATCHSETUPW 구조체(icm.h)
COLORMATCHSETUP 구조에는 SetupColorMatchingW 함수가 ColorManagement 대화 상자를 초기화하는 데 사용하는 정보가 포함되어 있습니다. 사용자가 대화 상자를 닫은 후 SetupColorMatching 은 이 구조에서 사용자의 선택 항목에 대한 정보를 반환합니다.
구문
typedef struct _tagCOLORMATCHSETUPW {
DWORD dwSize;
DWORD dwVersion;
DWORD dwFlags;
HWND hwndOwner;
PCWSTR pSourceName;
PCWSTR pDisplayName;
PCWSTR pPrinterName;
DWORD dwRenderIntent;
DWORD dwProofingIntent;
PWSTR pMonitorProfile;
DWORD ccMonitorProfile;
PWSTR pPrinterProfile;
DWORD ccPrinterProfile;
PWSTR pTargetProfile;
DWORD ccTargetProfile;
DLGPROC lpfnHook;
LPARAM lParam;
PCMSCALLBACKW lpfnApplyCallback;
LPARAM lParamApplyCallback;
} COLORMATCHSETUPW, *PCOLORMATCHSETUPW, *LPCOLORMATCHSETUPW;
멤버
dwSize
구조체의 크기입니다. sizeof(COLORMATCHSETUP)로 설정해야 합니다.
dwVersion
COLORMATCHSETUP 구조체의 버전입니다. COLOR_MATCH_VERSION 설정해야 합니다.
dwFlags
대화 상자를 초기화하는 데 사용되는 비트 플래그 집합입니다. 항목에서 0으로 설정하면 모든 컨트롤은 기본 상태를 가정합니다.
대화 상자가 반환되면 이러한 플래그는 사용자의 입력을 나타내도록 설정됩니다.
이 멤버는 다음 플래그의 조합을 사용하여 설정할 수 있습니다.
플래그 | 의미 |
---|---|
CMS_DISABLEICM | 항목에 설정된 경우 이 플래그는 다른 모든 컨트롤을 사용하지 않도록 설정하여 "색 관리 사용" 검사 상자가 선택 취소되었음을 나타냅니다. 종료 시 설정된 경우 사용자가 색 관리를 수행하지 않으려는 것을 의미합니다. |
CMS_ENABLEPROOFING | 항목에 설정된 경우 이 플래그는 언어 교정 컨트롤을 사용하도록 설정하고 언어 교정 검사 확인란을 선택했음을 나타냅니다. 종료 시 설정된 경우 사용자가 선택한 프린터와 다른 대상 디바이스에 대해 색 관리를 수행하려고 했음을 의미합니다. |
CMS_SETRENDERINTENT | 항목에 설정된 경우 이 플래그는 dwRenderIntent 멤버에 렌더링 의도 컨트롤을 초기화하는 데 사용할 값이 포함되어 있음을 나타냅니다. 그렇지 않으면 컨트롤이 기본적으로 그림 렌더링으로 설정됩니다. 이 플래그는 WCS를 사용하도록 설정된 경우 종료 시 설정됩니다. |
CMS_SETPROOFINTENT | CMS_ENABLEPROOFING 설정되지 않는 한 무시됩니다. 항목에서 설정되고 CMS_ENABLEPROOFING 설정된 경우 이 플래그는 dwProofingIntent 멤버를 사용하여 대상 렌더링 의도 컨트롤을 초기화할 수 있음을 나타냅니다. 그렇지 않으면 컨트롤이 기본적으로 그림 렌더링으로 설정됩니다. 이 플래그는 언어 교정을 사용하는 경우 종료 시 설정됩니다. |
CMS_SETMONITORPROFILE | 항목에 설정된 경우 이 플래그는 pMonitorProfile 멤버에 명명된 색 관리 프로필이 모니터 프로필 컨트롤의 초기 선택 항목임을 나타냅니다. 지정된 프로필이 모니터와 연결되지 않은 경우 이 플래그는 무시되고 모니터의 기본 프로필이 사용됩니다. |
CMS_SETPRINTERPROFILE | 항목에 설정된 경우 이 플래그는 pPrinterProfile 멤버에 명명된 색 관리 프로필이 프린터 프로필 컨트롤의 초기 선택 항목임을 나타냅니다. 지정된 프로필이 프린터와 연결되어 있지 않으면 이 플래그가 무시되고 프린터의 기본 프로필이 사용됩니다. |
CMS_SETTARGETPROFILE | 항목에 설정된 경우 이 플래그는 pTargetProfile 멤버에 명명된 색 프로필이 대상 프로필 컨트롤의 초기 선택 항목임을 나타냅니다. 지정된 프로필이 설치되어 있지 않으면 이 플래그가 무시되고 프린터의 기본 프로필이 사용됩니다. 프린터에 기본 프로필이 없으면 첫 번째 프로필이 사전순으로 표시됩니다. |
CMS_USEHOOK | 이 플래그는 lpfnHook 멤버에 후크 프로시저의 주소를 포함하도록 지정하고 lParam 멤버는 WM_INITDIALOG 메시지를 보낼 때 후크 프로시저에 전달할 값을 포함합니다. |
CMS_MONITOROVERFLOW | 색 관리를 사용하도록 설정하고 ccMonitorProfile 에 지정된 버퍼 크기가 선택한 프로필 이름에 충분하지 않은 경우 이 플래그는 종료 시 설정됩니다. GetLastError 는 이러한 경우 ERROR_INSUFFICIENT_BUFFER 반환합니다. |
CMS_PRINTERROVERFLOW | 이 플래그는 색 관리를 사용하도록 설정하고 ccPrinterProfile 에 지정된 버퍼 크기가 선택한 프로필 이름에 충분하지 않은 경우 종료 시 설정됩니다. GetLastError 는 이러한 경우 ERROR_INSUFFICIENT_BUFFER 반환합니다. |
CMS_TARGETOVERFLOW | 언어 교정을 사용하도록 설정하고 ccTargetProfile 에 지정된 버퍼 크기가 선택한 프로필 이름에 충분하지 않은 경우 이 플래그는 종료 시 설정됩니다. GetLastError 는 이러한 경우 ERROR_INSUFFICIENT_BUFFER 반환합니다. |
CMS_USEAPPLYCALLBACK | 항목에 설정된 경우 이 플래그는 SetupColorMatching 함수가 PCMSCALLBACKW 함수를 호출해야 했음을 나타냅니다. 콜백 함수의 주소는 lpfnApplyCallback에 포함되어 있습니다. |
CMS_USEDESCRIPTION | 항목에 설정된 경우 이 플래그는 SetupColorMatching 함수에 프로필 설명 태그에 포함된 프로필 설명을 검색하도록 지시합니다(ICC 프로필 형식 사양 v3.4 참조). 색 관리 공통 대화 상자의 모니터 프로필, 프린터 프로필, 에뮬레이트된 디바이스 프로필 편집 상자에 삽입됩니다. |
hwndOwner
대화 상자의 소유자에 대한 창 핸들이거나, 대화 상자에 소유자가 없는 경우 NULL 입니다.
pSourceName
색 관리를 수행할 항목의 원본 프로필을 설명하는 애플리케이션 지정 문자열에 대한 포인터입니다. NULL인 경우 이미지 소스 컨트롤은 Windows 기본 색 프로필의 이름을 표시합니다.
pDisplayName
색 관리에 사용할 모니터의 이름을 지정하는 문자열을 가리킵니다. 유효한 모니터의 이름이 아닌 경우 첫 번째 열거형 모니터가 사용됩니다.
pPrinterName
이미지를 렌더링할 프린터의 이름을 지정하는 문자열을 가리킵니다. 올바른 프린터 이름이 아닌 경우 기본 프린터가 사용되며 대화 상자에서 이름이 지정됩니다.
dwRenderIntent
원하는 색 관리 유형입니다. 유효한 값은 다음과 같습니다.
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
자세한 내용은 렌더링 의도를 참조하세요.
dwProofingIntent
교정된 이미지에 원하는 색 관리 유형입니다. 유효한 값은 다음과 같습니다.
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
자세한 내용은 렌더링 의도를 참조하세요.
pMonitorProfile
사용자가 선택한 모니터 프로필의 이름을 배치할 버퍼에 대한 포인터입니다. CMS_SETMONITORPROFILE 플래그를 사용하는 경우 이 플래그를 사용하여 대화 상자가 처음 표시될 때 모니터 기본값 이외의 프로필을 선택할 수도 있습니다.
ccMonitorProfile
pMonitorProfile 멤버가 가리키는 버퍼의 크기(문자)입니다. 버퍼가 선택한 이름을 보유할 만큼 크지 않으면 이름이 이 크기로 잘리고 ERROR_INSUFFICIENT_BUFFER 반환됩니다. MAX_PATH 크기의 버퍼는 항상 작동합니다.
pPrinterProfile
사용자가 선택한 프린터 프로필의 이름을 배치할 버퍼를 가리킵니다. CMS_SETPRINTERPROFILE 플래그를 사용하는 경우 대화 상자가 처음 표시될 때 이 플래그를 사용하여 프린터 기본값 이외의 프로필을 선택할 수도 있습니다.
ccPrinterProfile
pPrinterProfile 멤버가 가리키는 버퍼의 크기(문자)입니다. 버퍼가 선택한 이름을 보유할 만큼 크지 않으면 이름이 이 크기로 잘리고 ERROR_INSUFFICIENT_BUFFER 반환됩니다. MAX_PATH 크기의 버퍼는 항상 작동합니다.
pTargetProfile
교정을 위해 사용자가 선택한 대상 프로필의 이름을 배치할 버퍼를 가리킵니다. CMS_SETTARGETPROFILE 플래그를 사용하는 경우 대화 상자가 처음 표시될 때 이 플래그를 사용하여 프린터 기본값 이외의 프로필을 선택할 수도 있습니다.
ccTargetProfile
pTargetProfile 멤버가 가리키는 버퍼의 크기(문자)입니다. 버퍼가 선택한 이름을 보유할 만큼 크지 않으면 이름이 이 크기로 잘리고 ERROR_INSUFFICIENT_BUFFER 반환됩니다. MAX_PATH 크기의 버퍼는 항상 작동합니다.
lpfnHook
CMS_USEHOOK 플래그가 설정된 경우 이 멤버는 대화 상자의 메시지를 필터링하거나 처리할 수 있는 대화 프로시저의 주소입니다( DialogProc 참조). 후크 프로시저는 WM_INITDIALOG 전에 발급된 메시지를 받지 않습니다. 시스템 제공 대화 프로시저에서 메시지를 처리한 후 WM_INITDIALOG 메시지에서 호출됩니다. 다른 모든 메시지에서 후크 프로시저는 시스템 제공 프로시저 전에 메시지를 받습니다. 후크 프로시저가 이러한 메시지에 TRUE 를 반환하는 경우 시스템 제공 프로시저가 호출되지 않습니다.
후크 프로시저는 EndDialog 함수를 호출할 수 있습니다.
lParam
CMS_USEHOOK 플래그가 설정된 경우 이 멤버는 WM_INITDIALOG 메시지가 처리될 때 애플리케이션에서 제공하는 후크 프로시저에 lParam 매개 변수로 전달됩니다.
lpfnApplyCallback
색 관리 대화 상자의 적용 단추를 선택할 때 호출되는 콜백 함수에 대한 포인터를 포함합니다. 콜백 함수가 제공되지 않으면 이 멤버를 NULL로 설정해야 합니다. PCMSCALLBACKW를 참조하세요.
lParamApplyCallback
lParam 매개 변수를 통해 ApplyCallbackFunction 함수에 전달될 값을 포함합니다. 값의 의미와 콘텐츠는 애플리케이션에 의해 지정됩니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | icm.h |