Estrutura COLORMATCHSETUPW (icm.h)
A estrutura COLORMATCHSETUP contém informações que a função SetupColorMatchingW usa para inicializar a caixa de diálogo ColorManagement . Depois que o usuário fecha a caixa de diálogo, SetupColorMatching retorna informações sobre a seleção do usuário nessa estrutura.
Sintaxe
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;
Membros
dwSize
Tamanho da estrutura. Deve ser definido como sizeof ( COLORMATCHSETUP ).
dwVersion
Versão da estrutura COLORMATCHSETUP . Isso deve ser definido como COLOR_MATCH_VERSION.
dwFlags
Um conjunto de sinalizadores de bits usados para inicializar a caixa de diálogo. Se definido como 0 na entrada, todos os controles assumem seus estados padrão.
Quando a caixa de diálogo retorna, esses sinalizadores são definidos para indicar a entrada do usuário.
Esse membro pode ser definido usando uma combinação dos sinalizadores a seguir.
Sinalizador | Significado |
---|---|
CMS_DISABLEICM | Se definido na entrada, esse sinalizador indicará que a caixa de marcar "Habilitar Gerenciamento de Cores" está desmarcada, desabilitando todos os outros controles. Se definido na saída, isso significa que o usuário não deseja que o gerenciamento de cores seja executado. |
CMS_ENABLEPROOFING | Se definido na entrada, esse sinalizador indica que os controles revisores de texto devem ser habilitados e a caixa Revisão de marcar está marcada. Se definido na saída, significa que o usuário deseja executar o gerenciamento de cores para um dispositivo de destino diferente da impressora selecionada. |
CMS_SETRENDERINTENT | Se definido na entrada, esse sinalizador indicará que o membro dwRenderIntent contém o valor a ser usado para inicializar o controle Intenção de Renderização. Caso contrário, o controle usará como padrão a renderização de imagem. Esse sinalizador será definido na saída se o WCS estiver habilitado. |
CMS_SETPROOFINTENT | Ignorado, a menos que CMS_ENABLEPROOFING também esteja definido. Se definido na entrada e CMS_ENABLEPROOFING também estiver definido, esse sinalizador indicará que o membro dwProofingIntent deve ser usado para inicializar o controle De intenção de renderização de destino. Caso contrário, o controle usará como padrão a renderização de imagem. Esse sinalizador será definido na saída se o revisor estiver habilitado. |
CMS_SETMONITORPROFILE | Se definido na entrada, esse sinalizador indica que o perfil de gerenciamento de cores nomeado no membro pMonitorProfile deve ser a seleção inicial no controle de perfil do monitor. Se o perfil especificado não estiver associado ao monitor, esse sinalizador será ignorado e o perfil padrão do monitor será usado. |
CMS_SETPRINTERPROFILE | Se definido na entrada, esse sinalizador indica que o perfil de gerenciamento de cores nomeado no membro pPrinterProfile deve ser a seleção inicial no controle de perfil da impressora. Se o perfil especificado não estiver associado à impressora, esse sinalizador será ignorado e o perfil padrão da impressora será usado. |
CMS_SETTARGETPROFILE | Se definido na entrada, esse sinalizador indica que o perfil de cor nomeado no membro pTargetProfile deve ser a seleção inicial no controle de perfil de destino. Se o perfil especificado não estiver instalado, esse sinalizador será ignorado e o perfil padrão da impressora será usado. Se a impressora não tiver nenhum perfil padrão, o primeiro perfil em ordem alfabética será exibido. |
CMS_USEHOOK | Esse sinalizador especifica que o membro lpfnHook contém o endereço de um procedimento de gancho e o membro lParam contém um valor a ser passado para o procedimento de gancho quando a mensagem WM_INITDIALOG é enviada. |
CMS_MONITOROVERFLOW | Esse sinalizador será definido na saída se o gerenciamento de cores for habilitado e o tamanho do buffer fornecido em ccMonitorProfile for insuficiente para o nome do perfil selecionado. GetLastError retorna ERROR_INSUFFICIENT_BUFFER nesse caso. |
CMS_PRINTERROVERFLOW | Esse sinalizador será definido na saída se o gerenciamento de cores for habilitado e o tamanho do buffer fornecido em ccPrinterProfile for insuficiente para o nome do perfil selecionado. GetLastError retorna ERROR_INSUFFICIENT_BUFFER nesse caso. |
CMS_TARGETOVERFLOW | Esse sinalizador será definido na saída se o revisor for habilitado e o tamanho do buffer fornecido em ccTargetProfile for insuficiente para o nome do perfil selecionado. GetLastError retorna ERROR_INSUFFICIENT_BUFFER nesse caso. |
CMS_USEAPPLYCALLBACK | Se definido na entrada, esse sinalizador indica que a função SetupColorMatching deve chamar a função PCMSCALLBACKW. O endereço da função de retorno de chamada está contido em lpfnApplyCallback. |
CMS_USEDESCRIPTION | Se definido na entrada, esse sinalizador instruirá a função SetupColorMatching a recuperar a descrição do perfil contida nas marcas de descrição do perfil (consulte Especificação de formato de perfil do ICC v3.4). Ele os inserirá nas caixas de edição Perfil de Monitor, Perfil de Impressora, Perfil de Dispositivo Emulado na caixa de diálogo Comum gerenciamento de cores . |
hwndOwner
O identificador de janela para o proprietário da caixa de diálogo ou NULL se a caixa de diálogo não tiver proprietário.
pSourceName
Ponteiro para uma cadeia de caracteres especificada pelo aplicativo que descreve o perfil de origem do item para o qual o gerenciamento de cores deve ser executado. Se for NULL, o controle Fonte da Imagem exibirá o nome do perfil de cor padrão do Windows.
pDisplayName
Aponta para uma cadeia de caracteres nomeando o monitor a ser usado para o gerenciamento de cores. Se esse não for o nome de um monitor válido, o primeiro monitor enumerado será usado.
pPrinterName
Aponta para uma cadeia de caracteres nomeando a impressora na qual a imagem deve ser renderizada. Se esse não for um nome de impressora válido, a impressora padrão será usada e nomeada na caixa de diálogo.
dwRenderIntent
O tipo de gerenciamento de cores desejado. Os valores válidos são:
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
Para obter mais informações, consulte Intenções de renderização.
dwProofingIntent
O tipo de gerenciamento de cores desejado para a imagem à prova. Os valores válidos são:
INTENT_PERCEPTUAL
INTENT_SATURATION
INTENT_RELATIVE_COLORIMETRIC
INTENT_ABSOLUTE_COLORIMETRIC
Para obter mais informações, consulte Intenções de renderização.
pMonitorProfile
Ponteiro para um buffer no qual colocar o nome do perfil de monitor selecionado pelo usuário. Se o sinalizador CMS_SETMONITORPROFILE for usado, esse sinalizador também poderá ser usado para selecionar um perfil diferente do padrão do monitor quando a caixa de diálogo for exibida pela primeira vez.
ccMonitorProfile
O tamanho do buffer apontado pelo membro pMonitorProfile , em caracteres. Se o buffer não for grande o suficiente para manter o nome selecionado, o nome será truncado para esse tamanho e ERROR_INSUFFICIENT_BUFFER será retornado. Um buffer de tamanho de MAX_PATH sempre funciona.
pPrinterProfile
Aponta para um buffer no qual colocar o nome do perfil de impressora selecionado pelo usuário. Se o sinalizador CMS_SETPRINTERPROFILE for usado, esse sinalizador também poderá ser usado para selecionar um perfil diferente do padrão da impressora quando a caixa de diálogo for exibida pela primeira vez.
ccPrinterProfile
O tamanho do buffer apontado pelo membro pPrinterProfile , em caracteres. Se o buffer não for grande o suficiente para manter o nome selecionado, o nome será truncado para esse tamanho e ERROR_INSUFFICIENT_BUFFER será retornado. Um buffer de tamanho de MAX_PATH sempre funciona.
pTargetProfile
Aponta para um buffer no qual colocar o nome do perfil de destino selecionado pelo usuário para revisão de texto. Se o sinalizador CMS_SETTARGETPROFILE for usado, esse sinalizador também poderá ser usado para selecionar um perfil diferente do padrão da impressora quando a caixa de diálogo for exibida pela primeira vez.
ccTargetProfile
O tamanho do buffer apontado pelo membro pTargetProfile , em caracteres. Se o buffer não for grande o suficiente para manter o nome selecionado, o nome será truncado para esse tamanho e ERROR_INSUFFICIENT_BUFFER será retornado. Um buffer de tamanho de MAX_PATH sempre funciona.
lpfnHook
Se o sinalizador CMS_USEHOOK estiver definido, esse membro será o endereço de um procedimento de caixa de diálogo (consulte DialogProc ) que pode filtrar ou manipular mensagens para a caixa de diálogo. O procedimento de gancho não recebe mensagens emitidas antes de WM_INITDIALOG. Ele é chamado na mensagem WM_INITDIALOG depois que o procedimento de diálogo fornecido pelo sistema processa a mensagem. Em todas as outras mensagens, o procedimento de gancho recebe a mensagem antes do procedimento fornecido pelo sistema. Se o procedimento de gancho retornar TRUE para essas mensagens, o procedimento fornecido pelo sistema não será chamado.
O procedimento de gancho pode chamar a função EndDialog .
lParam
Se o sinalizador CMS_USEHOOK estiver definido, esse membro será passado para o procedimento de gancho fornecido pelo aplicativo como o parâmetro lParam quando a mensagem WM_INITDIALOG for processada.
lpfnApplyCallback
Contém um ponteiro para uma função de retorno de chamada que é invocada quando o botão Aplicar da caixa de diálogo Gerenciamento de Cores é selecionado. Se nenhuma função de retorno de chamada for fornecida, esse membro deverá ser definido como NULL. Consulte PCMSCALLBACKW.
lParamApplyCallback
Contém um valor que será passado para a função ApplyCallbackFunction por meio de seu parâmetro lParam . O significado e o conteúdo do valor são especificados pelo aplicativo.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | icm.h |