Compartilhar via


Função DrvIcmCreateColorTransform (winddi.h)

A função DrvIcmCreateColorTransform cria uma transformação de cor do ICM.

Sintaxe

HANDLE DrvIcmCreateColorTransform(
  [in]           DHPDEV           dhpdev,
  [in]           LPLOGCOLORSPACEW pLogColorSpace,
  [in, optional] PVOID            pvSourceProfile,
  [in]           ULONG            cjSourceProfile,
  [in]           PVOID            pvDestProfile,
  [in]           ULONG            cjDestProfile,
  [in, optional] PVOID            pvTargetProfile,
  [in]           ULONG            cjTargetProfile,
  [in]           DWORD            dwReserved
);

Parâmetros

[in] dhpdev

Manipule para o PDEV do dispositivo físico.

[in] pLogColorSpace

Ponteiro para uma estrutura de espaço de cor lógica. A estrutura LOGCOLORSPACEW é definida na documentação do SDK do Microsoft Windows. O driver deve obter informações de espaço de cor de origem dessa estrutura quando pvSourceProfile for NULL.

[in, optional] pvSourceProfile

Ponteiro para o mapa de memória do perfil de origem. Este parâmetro pode ser NULL.

[in] cjSourceProfile

Especifica o tamanho, em bytes, do mapa de memória do perfil de origem. Se pvSourceProfile for NULL, esse parâmetro deverá ser definido como zero.

[in] pvDestProfile

Ponteiro para o mapa de memória do perfil de destino.

[in] cjDestProfile

Especifica o tamanho, em bytes, do mapa de memória do perfil de destino.

[in, optional] pvTargetProfile

Ponteiro para o mapa de memória do perfil de destino. Este parâmetro pode ser NULL.

[in] cjTargetProfile

Especifica o tamanho, em bytes, do mapa de memória do perfil de destino. Se pvTargetProfile for NULL, esse parâmetro deverá ser definido como zero.

[in] dwReserved

Parâmetro reservado que deve ser definido como zero.

Retornar valor

DrvIcmCreateColorTransform retorna um identificador para a transformação criada após o sucesso. Caso contrário, ele relatará um erro e retornará NULL.

Comentários

O driver cria uma transformação de cor com base nos dados do perfil da seguinte maneira:

  • O driver deve usar o perfil de origem para o qual pvSourceProfile aponta quando não é NULL. Caso contrário, o driver deve usar os dados na estrutura para a qual pLogColorSpace aponta para informações de espaço de cor de origem.
  • Quando o driver recebe um perfil de destino, mas nenhum perfil de destino, ele deve armazenar os dados necessários para transformar cores do espaço de cor de origem especificado no espaço de cor de destino especificado.
  • Quando o driver recebe perfis de destino e de destino, ele deve armazenar os dados necessários para transformar cores do espaço de cor de origem especificado no espaço de cor de destino especificado e do espaço de cor de destino de volta para o espaço de cor de destino. Nesse cenário, o dispositivo do driver é o dispositivo de destino no qual uma imagem pode ser provada. Em seguida, o driver deve ser capaz de converter o espaço de cor da imagem de revisão de texto no espaço de cores do dispositivo de destino.
Independentemente de um perfil de destino ser especificado, o dispositivo do driver é sempre o dispositivo de destino.

Os perfis fornecidos seguem a versão 2.10 do formato de perfil ICC. Se o driver não entender o formato especificado, ele deverá falhar na chamada.

O driver pode acessar com segurança todo o mapa de memória de cada perfil. Os ponteiros pvSourceProfile, pvDestProfile e pvTargetProfile são válidos somente durante o escopo da chamada para DrvIcmCreateTransform.

Os drivers que relatam suporte ao ICM devem implementar essa função. Um driver indica suporte para ICM definindo o sinalizador GCAPS_ICM no membro flGraphicsCaps da estrutura DEVINFO .

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho winddi.h (inclua Winddi.h)

Confira também

DrvIcmDeleteColorTransform