D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 结构 (d2d1.h)

包含 ID2D1LinearGradientBrush 渐变轴的起点和终点。

语法

typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES {
  D2D1_POINT_2F startPoint;
  D2D1_POINT_2F endPoint;
} D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;

成员

startPoint

类型: D2D1_POINT_2F

在画笔的坐标空间中,渐变轴的起点。

endPoint

类型: D2D1_POINT_2F

在画笔的坐标空间中,渐变轴的端点。

注解

使用 CreateLinearGradientBrush 方法创建新的 ID2D1LinearGradientBrush 对象时,请使用此方法。 为方便起见,Direct2D 提供 D2D1::LinearGradientBrushProperties 帮助程序函数,用于创建新的 D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 结构。

下图显示了线性渐变在更改其起点和终点时如何变化。 对于第一个渐变,起点设置为 (0,0) ,终点设置为 (150, 50) ;这会创建一个从左上角开始并延伸到正在绘制区域的右下角的对角渐变。 将起点设置为 (0、25) ,并将终点设置为 (150、25) 时,将创建水平渐变。 同样,将起点设置为 (75, 0) ,将终点设置为 (75, 50) 将创建垂直渐变。 将起点设置为 (0, 50) ,并将终点设置为 (150, 0) 将创建一个从左下角开始并延伸到所绘制区域的右上角的对角渐变。

具有不同轴的四个渐变的插图

示例

以下示例使用 CreateLinearGradientBrush 方法创建 ID2D1LinearGradientBrush (m_pLinearGradientBrush) 。 它使用 D2D1::LinearGradientBrushProperties 帮助程序方法创建一个 D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES 结构,该结构包含 (0、) 和终点 (150、150) ,并将其传递给 CreateLinearGradientBrush 方法。

// The line that determines the direction of the gradient starts at
// the upper-left corner of the square and ends at the lower-right corner.

if (SUCCEEDED(hr))
{
    hr = m_pRenderTarget->CreateLinearGradientBrush(
        D2D1::LinearGradientBrushProperties(
            D2D1::Point2F(0, 0),
            D2D1::Point2F(150, 150)),
        pGradientStops,
        &m_pLinearGradientBrush
        );
}

有关创建和使用线性渐变画笔的详细信息,请参阅 如何创建线性渐变画笔 主题和 画笔概述

要求

要求
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用]
标头 d2d1.h

另请参阅

画笔概述

如何创建线性渐变画笔