WIC API 개요
WIC(Windows 이미징 구성 요소)는 C 및 C++에서 사용할 수 있는 COM(구성 요소 개체 모델) 기반 API를 제공합니다. WIC API는 다음을 비롯한 다양한 이미지 관련 기능을 노출합니다.
- 표준 웹 이미지 형식에 대한 기본 제공 코덱입니다.
- 표준 메타데이터 형식에 대한 기본 제공 지원.
- 광범위한 픽셀 형식 지원.
- 높은 색 지원; 30비트 확장 범위, 30비트 고정밀, 48비트 고정밀 및 넓은 영역 픽셀 형식을 포함합니다.
- 이미지 코덱, 픽셀 형식 및 메타데이터 형식에 대한 확장 가능한 프레임워크입니다.
이 항목에는 다음 topics 포함되어 있습니다.
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의 쓰기 가능한 메모리 내 표현을 나타냅니다. |
디코더 | 스트림에서 이미지 데이터를 이미지 처리에 유용한 형식으로 디코딩하는 데 사용됩니다. |
인코더 | 스트림에 이미지 데이터를 씁니다. |
스트림 | 파일, 네트워크 리소스, 메모리 블록 등에서 데이터를 읽고 쓰는 데 사용됩니다. |
서식 변환기 | 한 픽셀 형식에서 다른 픽셀 형식으로 변환하는 데 사용됩니다. |
메타데이터 쿼리 판독기 | 이미지 또는 이미지 프레임의 메타데이터를 읽는 데 사용됩니다. |
메타데이터 쿼리 기록기 | 이미지 또는 이미지 프레임에 메타데이터를 쓰는 데 사용됩니다. |