0

我知道我可以画一个实心圆,我可以用 Graphics 画出许多简单和复杂的东西。但我无法让它画出一个点(不是一个像素)。

我正在玩一个画图程序,用户可以画得很好,但不能画一个点。我可以添加一个非常接近的虚拟点,或者可以画一个填充的圆圈,但有时我会错过明显的东西。

那么有没有办法用给定的 Brush 或 Pen 绘制一个点

不,我当然不是要画一个像素。我想使用颜色和宽度等属性。就像一个只有一个点或两个相同点的 DrawLine。但这没有任何意义。

4

1 回答 1

1
    public void DrawPoint(Graphics G, Pen pen, Point point)
    {
        // add more LineCaps as needed..
        int pw2 = (int ) Math.Max(1, pen.Width / 2);
        using(var brush = new SolidBrush(pen.Color))
        {
            if (pen.EndCap == LineCap.Square)
                G.FillRectangle(brush, point.X - pw2, point.Y - pw2, pen.Width, pen.Width);
            else
                G.FillEllipse(brush, point.X - pw2, point.Y - pw2, pen.Width, pen.Width);
        }
    }
于 2014-03-31T15:54:48.297 回答