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


Интерфейс IXpsOMLinearGradientBrush (xpsobjectmodel.h)

Задает линейный градиент, представляющий собой цветовой градиент вдоль вектора.

Наследование

Интерфейс IXpsOMLinearGradientBrush наследуется от IXpsOMGradientBrush. IXpsOMLinearGradientBrush также имеет следующие типы элементов:

Методы

Интерфейс IXpsOMLinearGradientBrush содержит следующие методы.

 
IXpsOMLinearGradientBrush::Clone

Создает глубокую копию интерфейса. (IXpsOMLinearGradientBrush.Clone)
IXpsOMLinearGradientBrush::GetEndPoint

Возвращает конечную точку градиента.
IXpsOMLinearGradientBrush::GetStartPoint

Возвращает начальную точку градиента.
IXpsOMLinearGradientBrush::SetEndPoint

Задает конечную точку градиента.
IXpsOMLinearGradientBrush::SetStartPoint

Задает начальную точку градиента.

Комментарии

На следующем рисунке начальная и конечная точки линейного градиента также являются начальной и конечной точками пути градиента, который представляет собой прямую линию, соединяющую эти точки.

Область градиента линейного градиента представляет собой область между начальной и конечной точками и расширяется в обоих направлениях под прямым углом к пути градиента. Область распространения — это область геометрии, которая находится за пределами области градиента.

Остановки градиента используются для определения цвета в определенных местах вдоль пути градиента. На рисунке градиентная остановка 0 находится в начальной точке пути градиента, а остановка градиента 1 — в конечной точке. Для заполнения области распространения используется метод XPS_SPREAD_METHOD_PAD .

Рисунок, показывающий термины, используемые в линейном градиенте В следующем примере кода показано, как создать экземпляр этого интерфейса.

IXpsOMLinearGradientBrush    *newInterface;
// The following values are defined outside of 
// this example.
//  IXpsOMGradientStop       *gradStop1, *gradStop2;
//  XPS_POINT                startPoint, endPoint;

// Note the implicit requirement that CoInitializeEx 
//  has previously been called from this thread.

hr = CoCreateInstance(
    __uuidof(XpsOMObjectFactory),
    NULL,
    CLSCTX_INPROC_SERVER,
    _uuidof(IXpsOMObjectFactory),
    reinterpret_cast<LPVOID*>(&xpsFactory)
    );

if (SUCCEEDED(hr))
{
    hr = xpsFactory->CreateLinearGradientBrush (
        gradStop1,
        gradStop2,
        &startPoint,
        &endPoint,
        &newInterface);

    if (SUCCEEDED(hr))
    {
        // use newInterface

        newInterface->Release();
    }
    xpsFactory->Release();
}
else
{
    // evaluate HRESULT error returned in hr
}

Требования

   
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновление платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header xpsobjectmodel.h

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

IXpsOMGradientBrush

IXpsOMGradientStop

IXpsOMObjectFactory::CreateLinearGradientBrush

IXpsOMRadialGradientBrush

Интерфейсы

XPS