Partilhar via


Visão geral da API WIC

O Windows Imaging Component (WIC) fornece uma API baseada em COM (Component Object Model) para uso em C e C++. A API WIC expõe uma variedade de funcionalidades relacionadas à imagem, incluindo:

  • Codecs integrados para formatos de imagem da web padrão.
  • Suporte integrado para formatos de metadados padrão.
  • Ampla gama de suporte ao formato pixel.
  • Suporte de alta cor; incluindo 30 bits de alcance estendido, 30 bits de alta precisão e 48 bits de alta precisão e formatos de pixel de ampla gama.
  • Estrutura extensível para codecs de imagem, formatos de pixel e formatos de metadados.

Este tópico contém os seguintes tópicos.

Arquivos de cabeçalho WIC

As APIs WIC são definidas nos seguintes arquivos de cabeçalho e IDL (Interface Definition Language):

Ficheiro Descrição
wincodec.h Define versões C e C++ das APIs WIC primárias.
wincodec.idl Define as interfaces WIC primárias.
wincodecsdk.h Define versões C e C++ das APIs WIC de metadados.
wincodecsdk.idl Define as interfaces de metadados WIC.
wincodec_proxy.h Define as exportações de WIC proxy.

 

Para usar o WIC, seus aplicativos devem incluir wincodec.h e/ou wincodecsdk.h, dependendo da API de que seu aplicativo precisa.

Arquivos da biblioteca

Os arquivos da biblioteca WIC:

Ficheiro Descrição
windowscodecs.lib Biblioteca de importação fornecida pelo Windows Software Development Kit (SDK).
windowscodecs.dll Biblioteca de implementação de estoque fornecida pelo sistema operacional.

 

Para vincular a APIs WIC, seu aplicativo deve incluir windowscodec.lib como uma dependência de vinculador adicional.

Fábricas de Classe

A tabela a seguir descreve as duas fábricas de classe COM que as APIs WIC fornecem para a criação de componentes WIC.

Interface de fábrica Descrição
IWICImagingFactory Fábrica de classe primária para desenvolvimento de aplicações usando componentes WIC. Esta fábrica cria componentes como descodificadores de imagem, codificadores e fluxos.
IWICComponentFactory Fábrica de classes destinada a desenvolvedores de componentes WIC. Os componentes criados a partir desta fábrica são usados principalmente no desenvolvimento de codec e manipulador de metadados.

 

Para criar qualquer fábrica de classes, use a função CoCreateInstance COM. O exemplo a seguir demonstra a criação da fábrica de imagens WIC.

// Initialize COM
CoInitialize(NULL);

// The factory pointer
IWICImagingFactory *pFactory = NULL;

// Create the COM imaging factory
HRESULT hr = CoCreateInstance(
    CLSID_WICImagingFactory,
    NULL,
    CLSCTX_INPROC_SERVER,
    IID_PPV_ARGS(&pFactory)
);

Componentes de imagem

As APIs WIC fornecem vários tipos de componentes de imagem. A tabela a seguir descreve alguns dos componentes comuns do WIC. Para obter uma lista completa dos componentes disponíveis, consulte interfaces WIC.

Tipo de componente Descrição
Bitmap Representa uma representação que pode ser escrita na memória de um IWICBitmapSource.
Decoder Usado para decodificar dados de imagem de um fluxo em um formato que é útil para processamento de imagem.
Encoder Grava dados de imagem em um fluxo.
Stream Usado para ler e gravar dados de um arquivo, recurso de rede, um bloco de memória e assim por diante.
Conversor de Formato Usado para converter de um formato de pixel para outro.
Leitor de Consulta de Metadados Usado para ler metadados de uma imagem ou moldura de imagem.
Gravador de Consulta de Metadados Usado para gravar metadados em uma imagem ou quadro de imagem.

 

Ver também

Referências

Amostras e Exemplos de Código