Интерфейс ID2D1GradientStopCollection (d2d1.h)
Представляет коллекцию объектов D2D1_GRADIENT_STOP для линейных и радиальных кистей градиента.
Наследование
Интерфейс ID2D1GradientStopCollection наследуется от ID2D1Resource. ID2D1GradientStopCollection также имеет следующие типы элементов:
Методы
Интерфейс ID2D1GradientStopCollection содержит следующие методы.
ID2D1GradientStopCollection::GetColorInterpolationGamma Указывает гамма-пространство, в котором интерполируются остановки градиента. |
ID2D1GradientStopCollection::GetExtendMode Указывает поведение градиента за пределами нормализованного диапазона градиента. |
ID2D1GradientStopCollection::GetGradientStopCount Извлекает количество остановок градиента в коллекции. |
ID2D1GradientStopCollection::GetGradientStops Копирует остановки градиента из коллекции в массив D2D1_GRADIENT_STOP структур. |
Комментарии
Создание объектов ID2D1GradientStopCollection
Чтобы создать ID2D1GradientStopCollection, используйте метод ID2D1RenderTarget::CreateGradientStopCollection .Коллекция остановок градиента — это ресурс, зависящий от устройства. Приложение должно создавать коллекции остановки градиента после инициализации целевого объекта отрисовки, с помощью которого будет использоваться коллекция остановок градиента, и повторно создавать коллекцию останова градиента всякий раз, когда нужно повторно создать целевой объект отрисовки. (Дополнительные сведения о ресурсах см. в разделе Общие сведения о ресурсах.)
Примеры
В следующем примере создается массив остановок градиента, а затем используется для создания id2D1GradientStopCollection.
// Create an array of gradient stops to put in the gradient stop
// collection that will be used in the gradient brush.
ID2D1GradientStopCollection *pGradientStops = NULL;
D2D1_GRADIENT_STOP gradientStops[2];
gradientStops[0].color = D2D1::ColorF(D2D1::ColorF::Yellow, 1);
gradientStops[0].position = 0.0f;
gradientStops[1].color = D2D1::ColorF(D2D1::ColorF::ForestGreen, 1);
gradientStops[1].position = 1.0f;
// Create the ID2D1GradientStopCollection from a previously
// declared array of D2D1_GRADIENT_STOP structs.
hr = m_pRenderTarget->CreateGradientStopCollection(
gradientStops,
2,
D2D1_GAMMA_2_2,
D2D1_EXTEND_MODE_CLAMP,
&pGradientStops
);
В следующем примере кода используется ID2D1GradientStopCollection для создания ID2D1LinearGradientBrush.
// 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, Windows Vista с пакетом обновления 2 (SP2) и обновление платформы для Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | d2d1.h |