Я хочу заполнить нижнюю левую половину прямоугольника (то есть треугольника):
с помощью LinearGradient, переходя от цвета к прозрачному:
Заполнение половины прямоугольника:
Я знаю точку (x, y) и размер прямоугольника.
Если япопробуйте использовать LinearGradientBrush
, чтобы выполнить мой линейный градиент:
brush = new LinearGradientBrush(
MakePoint(0, y), //bottom left corner
MakePoint(x, 0), //upper right corner
MakeColor(255, c), //fully opaque color
MakeColor(0, c)); //fully transparent color
graphics.FillRectangle(brush, MakeRect(0, 0, w, h));
Кисть для линейного градиента заполняет весь прямоугольник, что было бы хорошо, если бы оно продолжало заполнять остальную частьпрямоугольник с окончательным (прозрачным) цветом;но вместо этого он оборачивается:
У меня есть LinearGradientBrush
, как мне нравится, я просто хочу FillTriangle
или FillPolygon
, а не FillRectangle
.За исключением того, что нет FillTriangle или FillPolygon, только FillRectangle и FillEllipse.
См. Также
текст ссылки