WIC API 개요

WIC(Windows 이미징 구성 요소)는 C 및 C++에서 사용할 수 있는 COM(구성 요소 개체 모델) 기반 API를 제공합니다. WIC API는 다음을 비롯한 다양한 이미지 관련 기능을 노출합니다.

  • 표준 웹 이미지 형식에 대한 기본 제공 코덱입니다.
  • 표준 메타데이터 형식에 대한 기본 제공 지원.
  • 광범위한 픽셀 형식 지원.
  • 높은 색 지원; 30비트 확장 범위, 30비트 고정밀, 48비트 고정밀 및 넓은 영역 픽셀 형식을 포함합니다.
  • 이미지 코덱, 픽셀 형식 및 메타데이터 형식에 대한 확장 가능한 프레임워크입니다.

이 항목에는 다음 topics 포함되어 있습니다.

WIC 헤더 파일

WIC API는 다음 헤더 및 IDL(인터페이스 정의 언어) 파일에 정의됩니다.

파일 설명
wincodec.h 기본 WIC API의 C 및 C++ 버전을 정의합니다.
wincodec.idl 기본 WIC 인터페이스를 정의합니다.
wincodecsdk.h 메타데이터 WIC API의 C 및 C++ 버전을 정의합니다.
wincodecsdk.idl WIC 메타데이터 인터페이스를 정의합니다.
wincodec_proxy.h WIC 프록시 내보내기를 정의합니다.

 

WIC를 사용하려면 애플리케이션에 필요한 API에 따라 애플리케이션에 wincodec.h 및/또는 wincodecsdk.h가 포함되어야 합니다.

라이브러리 파일

WIC 라이브러리 파일:

파일 설명
windowscodecs.lib Windows SDK(소프트웨어 개발 키트)에서 제공하는 라이브러리를 가져옵니다.
windowscodecs.dll 운영 체제에서 제공하는 스톡 구현 라이브러리입니다.

 

WIC API에 연결하려면 애플리케이션에 windowscodec.lib를 추가 링커 종속성으로 포함해야 합니다.

클래스 팩터리

다음 표에서는 WIC API가 WIC 구성 요소를 만들기 위해 제공하는 두 개의 COM 클래스 팩터리에 대해 설명합니다.

팩터리 인터페이스 설명
IWICImagingFactory WIC 구성 요소를 사용하는 애플리케이션 개발을 위한 기본 클래스 팩터리입니다. 이 팩터리는 이미지 디코더, 인코더 및 스트림과 같은 구성 요소를 만듭니다.
IWICComponentFactory WIC 구성 요소 개발자를 대상으로 하는 클래스 팩터리입니다. 이 팩터리에서 만든 구성 요소는 주로 코덱 및 메타데이터 처리기 개발에 사용됩니다.

 

두 클래스 팩터리를 만들려면 CoCreateInstance COM 함수를 사용합니다. 다음 예제에서는 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)
);

이미징 구성 요소

WIC API는 여러 유형의 이미징 구성 요소를 제공합니다. 다음 표에서는 몇 가지 일반적인 WIC 구성 요소에 대해 설명합니다. 사용 가능한 구성 요소의 전체 목록은 WIC 인터페이스를 참조하세요.

구성 요소 유형 Description
비트맵 IWICBitmapSource의 쓰기 가능한 메모리 내 표현을 나타냅니다.
디코더 스트림에서 이미지 데이터를 이미지 처리에 유용한 형식으로 디코딩하는 데 사용됩니다.
인코더 스트림에 이미지 데이터를 씁니다.
스트림 파일, 네트워크 리소스, 메모리 블록 등에서 데이터를 읽고 쓰는 데 사용됩니다.
서식 변환기 한 픽셀 형식에서 다른 픽셀 형식으로 변환하는 데 사용됩니다.
메타데이터 쿼리 판독기 이미지 또는 이미지 프레임의 메타데이터를 읽는 데 사용됩니다.
메타데이터 쿼리 기록기 이미지 또는 이미지 프레임에 메타데이터를 쓰는 데 사용됩니다.

 

참고 항목

참조

샘플 및 코드 예제