解决方案 »

  1.   

    本例是GDI图画坐标画法
    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Bitmap bm = new Bitmap(600, 400);//定义位图实例,并初始化大小
            Graphics g = Graphics.FromImage(bm);//定义绘图画面,封装上面的位图实例
            g.Clear(Color.GreenYellow);//定义绘图画面背景色        Pen p = new Pen(Color.Blue, 2);//定义一个2像素大小、蓝色铅笔
            g.DrawLine(p, new Point(0, 200), new Point(bm.Width, 200));//用铅笔在画面中间绘制一条x轴线
            g.DrawLine(p, new Point(300, 0), new Point(300, bm.Height));//用铅笔在画面中间绘制一条y轴线        //定义矩形区域,其参数分别表示一个矩形的位置和大小
            Rectangle rect1 = new Rectangle(100, 50, 100, 100);
            Rectangle rect2 = new Rectangle(400, 50, 100, 100);
            Rectangle rect3 = new Rectangle(250, 250, 100, 100);
            //分别用上面定义的矩形区域画圆
            g.DrawEllipse(p, rect1);
            g.DrawEllipse(p, rect2);
            g.DrawEllipse(p, rect3);
            //绘制一条直线连接第1、2个圆的圆点
            g.DrawLine(p, new Point(rect1.X + rect1.Width / 2, rect1.Y + rect1.Height / 2), new Point(rect2.X + rect1.Width / 2, rect1.Y + rect2.Height / 2));
            Brush b = new SolidBrush(Color.Red);//定义一个红色的笔刷
            Font drawFont = new Font("Arial", 12);//定义一个字体实例        //定义坐标值,其中DrawString()方法的参数为:显示值、字体属性、笔刷实例、坐标点
            for (int i = 0; i <= 6; i++)//循环绘制x轴坐标值
            {
                g.DrawString(Convert.ToString(i * 100), drawFont, b, new PointF(i * 50 + 300, 200));
            }
            for (int j = 0; j <= 6; j++)//循环绘制y轴坐标值
            {
                g.DrawString(Convert.ToString(j * 100), drawFont, b, new PointF(300, 200 - j * 50));
            }
            //输出图像格式为JPG,并显示在浏览器中在CodeGo.net中有
            bm.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
        }
    }