Axis-Aligned 클립 사각형으로 클립하는 방법

이 항목에서는 축 맞춤 클립 사각형을 사용하여 이미지를 클리핑하는 방법을 설명합니다. 콘텐츠 범위가 사각형의 축에 맞춰지므로 이 방법은 사각형 클립만 생성합니다. 이 방법은 콘텐츠 범위가 있는 레이어를 사용하는 것보다 더 효율적입니다. 자세한 내용은 SeeLayers 개요를 참조하세요.

축 맞춤 클립 사각형을 사용하여 클립하려면

  1. 리소스에서 원본 이미지를 로드합니다. 비트맵을 로드하는 방법에 대한 자세한 내용은 리소스에서 비트맵을 로드하는 방법을 참조하세요.

  2. ID2D1RenderTarget::P ushAxisAlignedClip을 호출하여 사각형을 지정합니다. 렌더링 명령은 사각형으로 잘립니다.

  3. 원본 이미지를 그림판.

  4. ID2D1RenderTarget::P opAxisAlignedClip을 호출하여 렌더링 대상에서 마지막 축 맞춤 클립을 제거합니다.

예를 들어 다음 그림에서 왼쪽의 원래 비트맵은 200*130픽셀입니다. 오른쪽의 비트맵은 축 맞춤 클립 사각형에 잘린 원래 비트맵입니다. 차원은 (20, 20)에서 (100, 100)입니다.

illustration of a goldfish bitmap before and after the bitmap is clipped

잘린 이미지를 만들려면 직사각형 구조를 클리핑 영역으로 만듭니다. 클리핑 영역으로 PushAxisAlignedClip 을 호출하고 원래 이미지를 그립니다. PopAxisAlignedClip을 호출하여 렌더링 대상에서 클립을 제거합니다. 다음 코드에서는 이 작업을 수행하는 방법을 보여 줍니다.

pRT->PushAxisAlignedClip(
    D2D1::RectF(20, 20, 100, 100),
    D2D1_ANTIALIAS_MODE_PER_PRIMITIVE
    );

pRT->FillRectangle(D2D1::RectF(0, 0, 200, 133), m_pOriginalBitmapBrush);
pRT->PopAxisAlignedClip();

Direct2D 참조