축 맞춤 클립 사각형을 활용하여 클리핑하는 방법
이미지를 클리핑하기 위해 축 맞춤 클립 사각형을 활용하는 방법을 이 토픽에서 설명합니다. 이 방법은 사각형 클립만 생성하며, 이는 콘텐츠 범위가 사각형의 축에 맞춰지기 때문입니다. 콘텐츠 경계가 있는 레이어를 사용하는 것보다 이 접근 방식이 더욱 효율적입니다. 자세한 내용은 레이어 개요를 참조하세요.
축 맞춤 클립 사각형을 활용하여 클리핑하기
원본 이미지를 리소스에서 로드합니다. 비트맵을 로드하는 방법에 대한 자세한 내용은 리소스에서 비트맵을 로드하는 방법을 참조하세요.
사각형을 지정하기 위해 ID2D1RenderTarget::PushAxisAlignedClip을 호출합니다. 렌더링 명령은 사각형으로 잘립니다.
원본 이미지를 그립니다.
렌더링 대상에서 마지막 축 맞춤 클립을 제거하기 위해 ID2D1RenderTarget::PopAxisAlignedClip을 호출합니다.
예를 들어, 다음과 같은 그림에서 왼쪽의 원래 비트맵은 200*130픽셀입니다. 오른쪽의 비트맵은 축 맞춤 클립 사각형으로 잘린 원래의 비트맵입니다. 차원은 (20, 20)에서 (100, 100)입니다.
사각형 구조를 클리핑 영역으로 만들어 잘린 이미지를 만듭니다. 클리핑 영역으로 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();