Visão geral da API wic

O wic (componente de imagem Windows) 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 internos para os formatos de imagem da Web padrão.
  • Suporte interno para formatos de metadados padrão.
  • Ampla gama de suporte ao formato pixel.
  • Suporte a cores altas; incluindo intervalo estendido de 30 bits, precisão alta de 30 bits e formatos de pixel de alta precisão e gama de 48 bits.
  • Estrutura extensível para codecs de imagem, formatos de pixel e formatos de metadados.

Este tópico contém os tópicos a seguir.

Arquivos de cabeçalho WIC

As APIs wic são definidas nos seguintes arquivos IDL (linguagem de definição de interface) e cabeçalho:

Arquivo Descrição
wincodec.h Define as versões C e C++ das APIs wic primárias.
wincodec.idl Define as interfaces wic primárias.
wincodecsdk.h Define as 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 proxy wic.

 

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

Arquivos de Biblioteca

Os arquivos da biblioteca WIC:

Arquivo Descrição
windowscodecs.lib Importar biblioteca fornecida pelo SDK (Windows Software Development Kit).
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 Classes

A tabela a seguir descreve as duas fábricas de classes COM que as APIs WIC fornecem para criar componentes wic.

Factory Interface Descrição
IWICImagingFactory Fábrica de classe primária para desenvolvimento de aplicativos usando componentes WIC. Essa fábrica cria componentes como decodificadores de imagem, codificadores e fluxos.
IWICComponentFactory Fábrica de classes direcionada para desenvolvedores de componentes WIC. Os componentes criados a partir dessa fábrica são usados principalmente no desenvolvimento do manipulador de metadados e codec.

 

Para criar uma 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 wic comuns. Para obter uma lista completa dos componentes disponíveis, consulte as interfaces WIC.

Tipo de componente Descrição
Bitmap Representa uma representação gravável na memória de um IWICBitmapSource.
Decodificador Usado para decodificar dados de imagem de um fluxo em um formato que é útil para o processamento de imagens.
Codificador Grava dados de imagem em um fluxo.
Fluxo 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 quadro de imagem.
Gravador de Consultas de Metadados Usado para gravar metadados em uma imagem ou quadro de imagem.

 

Consulte Também

Referências

Exemplos de exemplos e de código