Поделиться через


Метод PathGradientBrush::SetBlendBellShape (gdipluspath.h)

Метод PathGradientBrush::SetBlendBellShape задает форму смешения этой кисти градиента пути.

Синтаксис

Status SetBlendBellShape(
  [in]           REAL focus,
  [in, optional] REAL scale
);

Параметры

[in] focus

Тип: REAL

Реальное число, указывающее, где центральный цвет будет находиться на максимальной интенсивности. Это число должно находиться в диапазоне от 0 до 1.

[in, optional] scale

Тип: REAL

Необязательный элемент. Реальное число, указывающее максимальную интенсивность центрального цвета, который смешивается с граничным цветом. Это число должно находиться в диапазоне от 0 до 1. Значение по умолчанию — 1.

Возвращаемое значение

Тип: Состояние

В случае успешного выполнения метода возвращается ОК, который является элементом перечисления Status .

Если метод завершается ошибкой, он возвращает один из других элементов перечисления Status .

Комментарии

По умолчанию при переходе от границы градиента пути к центральной точке цвет постепенно меняется от цвета границы к центру. Вы можете настроить расположение и смешивание цветов границы и центра, вызвав метод PathGradientBrush::SetBlendBellShape .

Примеры

В следующем примере создается объект PathGradientBrush на основе эллипса. Код вызывает метод PathGradientBrush::SetBlendBellShape объекта PathGradientBrush , передав фокус 0,2 и масштаб 0,7. Затем код использует кисть градиента пути, чтобы закрасить прямоугольник, содержащий эллипс.

VOID Example_SetBlendShape(HDC hdc)
{
   Graphics graphics(hdc);

   // Create a path that consists of a single ellipse.
   GraphicsPath path;
   path.AddEllipse(0, 0, 200, 100);

   // Use the path to construct a brush.
   PathGradientBrush pthGrBrush(&path);

   // Set the color at the center of the path to red.
   pthGrBrush.SetCenterColor(Color(255, 255, 0, 0));

   // Set the color along the entire boundary of the path to blue.
   Color colors[] = {Color(255, 0, 0, 255)};
   INT count = 1;
   pthGrBrush.SetSurroundColors(colors, &count);

   pthGrBrush.SetBlendBellShape(0.2f, 0.7f);

   // The color is blue on the boundary and at the center.
   // At points that are 20 percent of the way from the boundary to the
   // center, the color is 70 percent red and 30 percent blue.

   graphics.FillRectangle(&pthGrBrush, 0, 0, 300, 300); 
}

Требования

Требование Значение
Минимальная версия клиента Windows XP, Windows 2000 Профессиональная [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header gdipluspath.h (включая Gdiplus.h)
Библиотека Gdiplus.lib
DLL Gdiplus.dll

См. также раздел

Кисти и закрашенные фигуры

Цвет

Создание градиента пути

Заполнение фигуры цветным градиентом

GraphicsPath

PathGradientBrush

PathGradientBrush::GetBlend

PathGradientBrush::GetBlendCount

PathGradientBrush::SetBlend

PathGradientBrush::SetBlendTriangularShape