LinearGradientBrush::SetBlendBellShape 메서드(gdiplusbrush.h)
LinearGradientBrush::SetBlendBellShape 메서드는 이 선형 그라데이션 브러시의 혼합 모양을 설정하여 종 모양의 곡선을 기반으로 사용자 지정 혼합을 만듭니다.
구문
Status SetBlendBellShape(
[in] REAL focus,
[in] REAL scale
);
매개 변수
[in] focus
형식: REAL
끝 색의 위치를 지정하는 실수입니다. 이 숫자는 경계선 사이의 거리의 백분율이며 0.0에서 1.0 사이의 범위에 있어야 합니다.
[in] scale
형식: REAL
선택 사항입니다. 그라데이션의 시작 색을 사용하여 포커스 위치에서 혼합되는 그라데이션 끝 색의 백분율을 지정하는 실수입니다. 이 숫자는 0.0에서 1.0까지의 범위에 있어야 합니다. 기본값은 1.0이며, 끝 색이 전체 강도임을 지정합니다.
반환 값
형식: 상태
메서드가 성공하면 Status 열거형의 요소인 Ok를 반환합니다.
메서드가 실패하면 Status 열거형의 다른 요소 중 하나를 반환합니다.
설명
기본적으로 시작 경계에서 끝 경계로 이동할 때 색이 시작 색(선형 그라데이션 브러시의 시작 경계에 있는 색)에서 끝 색(선형 그라데이션 브러시의 끝 경계에 있는 색)으로 점진적으로 변경됩니다. LinearGradientBrush::SetBlendBellShape 메서드를 사용하여 시작 색과 끝 색의 위치 지정 및 혼합을 사용자 지정할 수 있습니다.
LinearGradientBrush::SetBlendBellShape 메서드는 그라데이션 경계에서 벨 베이스의 극단이 있는 종 모양의 곡선을 따르도록 혼합을 사용자 지정합니다. 기본 혼합에서 선형 그라데이션 브러시의 시작 경계에 있는 시작 색은 종 모양의 혼합이 적용될 때 선형 그라데이션 브러시의 시작 및 끝 경계에 나타납니다. 기본 혼합에서 끝 경계에 있는 끝 색의 위치는 경계 사이의 어딘가에 있으며 포커스 값에 따라 결정됩니다. 즉, 포커스는 종의 피크 위치를 지정합니다. 예를 들어 포커스 값 0.7은 시작 경계와 끝 경계 사이의 거리의 70%로 피크를 배치합니다. 끝 색이 이 피크에 나타납니다.
종 모양 혼합의 끝 색은 그라데이션의 기본 혼합 시작 색과 기본 혼합 끝 색 사이의 영역 백분율입니다. 예를 들어 선형 그라데이션 브러시가 시작 색으로 빨간색으로 생성되고 파란색이 끝 색으로 생성되는 경우를 가정해 보겠습니다. LinearGradientBrush::SetBlendBellShape가 배율 값 0.8로 호출되면 종 모양 혼합의 끝 색은 빨강과 파랑 사이의 80%(빨강 20%, 파란색 80%)인 색조입니다. 배율 값 1.0은 100% 파란색의 끝 색을 생성합니다.
예제
다음 예제에서는 선형 그라데이션 브러시를 만들고 종 모양의 혼합을 설정하며 브러시를 사용하여 사각형을 채웁니다. 두 번 더, 코드는 서로 다른 값으로 종 모양의 혼합을 설정하고, 매번, 사각형을 채우기 위해 브러시를 사용합니다.
VOID Example_SetBlendBell(HDC hdc)
{
Graphics myGraphics(hdc);
LinearGradientBrush linGrBrush(
Point(0, 0),
Point(500, 0),
Color(255, 255, 0, 0), // red
Color(255, 0, 0, 255)); // blue
linGrBrush.SetBlendBellShape(0.5f, 0.6f);
myGraphics.FillRectangle(&linGrBrush, 0, 0, 500, 50);
linGrBrush.SetBlendBellShape(0.5f, 0.8f);
myGraphics.FillRectangle(&linGrBrush, 0, 75, 500, 50);
linGrBrush.SetBlendBellShape(0.5f, 1.0f);
myGraphics.FillRectangle(&linGrBrush, 0, 150, 500, 50);
}
요구 사항
지원되는 최소 클라이언트 | Windows XP, Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | gdiplusbrush.h(Gdiplus.h 포함) |
라이브러리 | Gdiplus.lib |
DLL | Gdiplus.dll |