Я рисую прямоугольник и эллипс на стекле.
brush = new SolidBrush(0xFF000000); //solid (i.e. non-opaque) black
graphics.FillRectangle(brush, x, y, 30, 30);
graphics.FillEllipse(brush, x+33, y-15, 30, 30);
- рисунок с эллипсом: непрозрачный
- рисунок с прямоугольником: это не непрозрачный
Что здесь происходит?
Вы можете увидеть то же самое относится и к другим цветам:
brush = new SolidBrush(0xFFff0000); //solid (i.e. non-opaque) red
graphics.FillRectangle(brush, x, y, 30, 30);
graphics.FillEllipse(brush, x, y+33, 30, 30);
brush = new SolidBrush(0xFF00ff00); //solid (i.e. non-opaque) green
graphics.FillRectangle(brush, x, y, 30, 30);
graphics.FillEllipse(brush, x, y+33, 30, 30);
brush = new SolidBrush(0xFF0000ff); //solid (i.e. non-opaque) blue
graphics.FillRectangle(brush, x, y, 30, 30);
graphics.FillEllipse(brush, x, y+33, 30, 30);
brush = new SolidBrush(0xFFffffff); //solid (i.e. non-opaque) white
graphics.FillRectangle(brush, x, y, 30, 30);
graphics.FillEllipse(brush, x, y+33, 30, 30);
Вывод : Почему:
FillEllipse
с непрозрачным цветным рисунком, непрозрачным
FillRectangle
с непрозрачным цветом рисует частично прозрачным
Примечание: Этот вопрос почти полностью повторяет мой другой вопрос .
За исключением того, что этот вопрос касается
разница между FillRectangle
и
FillEllipse
- тогда как этот вопрос
имеет дело с * Как нарисовать непрозрачные цвета
на стекле.
Смотри также