다음을 통해 공유


Effect::GetAuxData 메서드(gdipluseffects.h)

Effect::GetAuxDataBitmap::ApplyEffect 메서드에 대한 이전 호출에서 만든 조회 테이블 집합에 대한 포인터를 가져옵니다.

구문

VOID * GetAuxData();

반환 값

이 메서드는 Bitmap::ApplyEffect에 대한 이전 호출에서 만든 조회 테이블 집합에 대한 포인터를 반환합니다. 조회 테이블을 사용할 수 없는 경우 반환 값은 NULL입니다.

설명

Effect 클래스의 하위 항목 중 하나의 instance 만들고 해당 하위 항목의 주소를 Bitmap::ApplyEffect 메서드에 전달하여 비트맵에 효과를 적용할 수 있습니다. Effect의 특정 하위 항목에 대해 ApplyEffect는 조회 테이블을 만들고 해당 테이블의 주소를 하위 개체에 반환합니다. 예를 들어 다음과 같이 BrightnessContrast 개체에 대한 조회 테이블을 검색할 수 있습니다.

  1. BrightnessContrast 개체를 만들고 SetParameters 메서드를 호출합니다.
  2. BrightnessContrast 개체의 Effect::UseAuxData 메서드에 TRUE를 전달합니다.
  3. BrightnessContrast 개체의 주소를 Bitmap::ApplyEffect 메서드에 전달합니다.
  4. BrightnessContrast 개체의 Effect::GetAuxData 메서드를 호출하여 ApplyEffect에서 만든 조회 테이블에 대한 포인터를 가져옵니다. 조회 테이블의 버퍼는 ApplyEffect에 의해 할당됩니다. 버퍼를 해제할 책임이 없습니다.

ApplyEffectEffect 클래스의 다음 하위 항목에 대한 조회 테이블의 주소를 반환할 수 있습니다.

이전 목록의 클래스에 대해 ApplyEffect 는 파란색, 녹색, 빨간색 및 알파 채널에 대해 각각 하나씩 네 개의 조회 테이블을 만듭니다. 각 조회 테이블은 256바이트 배열이므로 전체 테이블 집합의 크기는 1024바이트입니다. 테이블은 파란색, 녹색, 빨간색, 알파 순서로 저장됩니다.

예제

다음 코드는 BrightnessContrast 개체의 주소를 Bitmap::ApplyEffect 메서드에 전달합니다. 그런 다음, 코드는 ApplyEffect에서 만든 파란색 채널 조회 테이블을 인쇄합니다.

Bitmap bm(L"Picture.bmp");

BrightnessContrastParams briConParams;
briConParams.brightnessLevel = 0;
briConParams.contrastLevel = 25;

BrightnessContrast briCon;
briCon.SetParameters(&briConParams);
briCon.UseAuxData(TRUE);
	
bm.ApplyEffect(&briCon, NULL);

VOID* data = briCon.GetAuxData();

// You know the size is 1024, but check to make sure.
INT size = briCon.GetAuxDataSize();

if(1024 != size || NULL == data)
   return;

// Cast the data pointer as a ColorLUTParams pointer so that it
// will be easy to examine the individual tables.
ColorLUTParams* tables = (ColorLUTParams*)data;
   
// Print the lookup table for the blue channel.
for(UINT j = 0; j < 256; ++j)
{
   printf("%u, %u\n", j, tables->lutB[j]);
}

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 gdipluseffects.h(Gdiplus.h 포함)
라이브러리 Gdiplus.lib
DLL Gdiplus.dll

참고 항목

ColorLUTParams

효과

효과::GetAuxDataSize

효과::UseAuxData