请问如何画出一个平滑的圆圈,没有锯齿的那种,我用的函数是DrawEllipse.

解决方案 »

  1.   

    Form程序,直接用PictureBox就行了 
    画圆:无填充色private void button1_Click(object sender, EventArgs e)
            {
                Graphics gra = this.pictureBox1.CreateGraphics();
                Pen pen = new Pen(Color.Pink);//画笔颜色
                gra.DrawEllipse(pen, 10, 10, 100, 100);//画椭圆的方法,x坐标、y坐标、宽、高,如果是100,则半径为50
             }画圆:有填充色private void button1_Click(object sender, EventArgs e)
            {
                Graphics gra = this.pictureBox1.CreateGraphics();
                Brush bush = new SolidBrush(Color.Green);//填充的颜色
                gra.FillEllipse(bush,10,10,100,100);//画填充椭圆的方法,x坐标、y坐标、宽、高,如果是100,则半径为50
            }以下是web程序,需要保存。int w = Convert.ToInt32(TextBox1.Text) * 2; 
    int h = Convert.ToInt32(TextBox1.Text) * 2; 
    Image1.Width = w; 
    Image1.Height = h; 
    Bitmap bmp = new Bitmap(w, h); 
    Graphics g = Graphics.FromImage(bmp); 
    g.FillEllipse(new SolidBrush(Color.Red),0,0,w,h); 
    bmp.Save(Server.MapPath("~/a.bmp")); 
    Image1.ImageUrl = "~/a.bmp"; 
    g.Dispose();
      

  2.   

    DrawEllipse函数画出的园就是有锯齿
      

  3.   

    你加上这句,就平滑多了 gra.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;