Partilhar via


Suporte para IWICDevelopRaw

Para permitir que os aplicativos suportem o processamento RAW, os autores de codec são fortemente incentivados a implementar todos os parâmetros do IWICDevelopRaw. Para o Windows 7, o Windows Imaging Component (WIC) exigirá suporte para todos os IWICDevelopRaw. Se o formato de arquivo não suportar todos esses parâmetros, você deve revisar o formato de arquivo de imagem.

Para habilitar o processamento RAW básico em aplicativos, os codecs devem oferecer suporte a ajustes de exposição (ExposureCompensationSupport) e cor (como KelvinWhitePointSupport e TintSupport). Além disso, a saída para espaços de cores e formatos de pixel específicos é altamente recomendada. O suporte para outros ajustes é, naturalmente, encorajado e é necessário para o Windows 7.

O codec RAW deve fornecer suporte básico para rotação de imagem e visualização rápida. A rotação pode ser especificada de duas maneiras distintas:

Estas duas abordagens diferem das seguintes formas:

Se a rotação for especificada em IWICDevelopRaw e IWICBitmapSourceTransform , o efeito de rotação será cumulativo. Por exemplo, se IWICDevelopRaw especificar uma rotação de 25 graus e IWICBitmapSourceTransform especificar uma rotação de 90 graus, deverá acontecer o seguinte:

  • Chamadas para IWICBitmapFrameDecode:: CopyPixels devem aplicar uma rotação de 25 graus (ou seja, apenas a quantidade especificada em IWICDevelopRaw ).
  • Chamadas para IWICBitmapSourceTransform::CopyPixels com uma quantidade dstTransform de 90 e, em seguida, resultam em uma rotação de 115 graus (25 + 90).
  • Novamente, apenas a rotação de 25 graus especificada via IWICDevelopRaw::SetRotation pode ser persistida.

No Windows Vista, o IWICBitmapFrameDecode::GetThumbnail e IWICBitmapDecoder::métodos de GetPreview permitem que os chamadores obtenham miniaturas incorporadas e imagens de visualização, respectivamente. Eles destinam-se a retornar visualizações e miniaturas pré-calculadas do fluxo de arquivos de imagem. Gerar visualizações ou miniaturas "em tempo real" resulta em baixo desempenho no Windows Explorer e no Visualizador de Fotos. O codec também deve fornecer uma maneira de retornar uma imagem de resolução de tela atualizada rapidamente quando os usuários estão fazendo controle interativo das configurações de processamento.

Chamadas para IWICDevelopRaw::SetRenderMode determinará quais chamadas subsequentes para IWICBitmapFrameDecode::CopyPixels retornar (favorecendo a velocidade ou a qualidade). Além disso, a interface IWICBitmapSourceTransform pode ser usada para determinar se a redução da resolução é necessária e pode aumentar o desempenho quando pode ser aplicada. A fidelidade de cor de todas as imagens deve ser comparável. Quando são feitas alterações nas configurações de processamento, todas essas renderizações devem refletir as alterações.

Conceptual

Visão geral do componente Windows Imaging

Diretrizes WIC para formatos de imagem Camera RAW

Como escrever um WIC-Enabled CODEC