图形笔1面宽度?

时间:2012-04-28 21:57:57

标签: c# graphics2d

我使用DrawElipse方法绘制两个圆圈(内圈和外圈)。

我创建了两个名为OuterPen和InnerPen的笔对象,并使用InnerPen使用OuterPen和Inner Circle创建外圈。

我面临的问题是,当我将外笔的大小增加到10px时,它会与内圈重叠,内圈被隐藏。

如何向外而不是向内增加OuterPen的大小,使其不与内圈重叠?

此致

1 个答案:

答案 0 :(得分:0)

您可以按照新笔尺寸的比例增长外圈,例如:

private void button1_Click_1(object sender, EventArgs e)
{
    DrawCircles(int.Parse(textBox1.Text));
}

private void DrawCircles(int size)
{
    Bitmap b = new Bitmap(300, 300);
    using (Graphics g = Graphics.FromImage(b))
    {
        Pen p = new Pen(Brushes.Red, size);
        Pen p2 = new Pen(Brushes.Blue, 1);
        g.DrawEllipse(p, 10 - size / 2, 10-size / 2, 200 + size, 200 + size);
        g.DrawEllipse(p2, 12, 12, 196, 196);
        g.Save();
    }
    pictureBox1.Image = b;
}