zoukankan      html  css  js  c++  java
  • winform GDI基础(一)

    1获取画布

    (1)从PaintEventArgs类中获取画布

            private void Form1_Paint(object sender, PaintEventArgs e)
            {
                Graphics g = e.Graphics;
            }

    (2)从Image中获取画布

                Bitmap bm = new Bitmap(this.Width, this.Height);
                Graphics g = Graphics.FromImage(bm);
    

    (3)使用CreateGraphics创建画布

     Graphics g = this.CreateGraphics();
    

    (4)其他方式

    从设备上下文的指定句柄创建新的 System.Drawing.Graphics

    public static Graphics FromHdc(IntPtr hdc);

    从设备上下文的指定句柄和设备的句柄创建新的 System.Drawing.Graphics

    public static Graphics FromHdc(IntPtr hdc, IntPtr hdevice);

    返回指定设备上下文的 System.Drawing.Graphics

    public static Graphics FromHdcInternal(IntPtr hdc);

    从窗口的指定句柄创建新的 System.Drawing.Graphics

    public static Graphics FromHwnd(IntPtr hwnd);

    创建指定 Windows 句柄的新 System.Drawing.Graphics

     public static Graphics FromHwndInternal(IntPtr hwnd);

    2绘制图像

                Graphics g = this.CreateGraphics();
                System.Drawing.Pen pen = new System.Drawing.Pen(Color.Red, 2);
                g.DrawLine();//画线
                g.DrawRectangle();//画矩形
                g.DrawEllipse();//画椭圆
                g.DrawArc();//画扇形
    

    3抗锯齿处理

    g.SmoothingMode = SmoothingMode.HighQuality;//设置抗锯齿
    g.CompositingQuality = CompositingQuality.HighQuality;//提升合成图片质量
    g.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit;//去掉文字的锯齿

    4处理图像

                Bitmap bm = new Bitmap(200, 200);
                Graphics g = Graphics.FromImage(bm);
                System.Drawing.Pen pen = new System.Drawing.Pen(Color.Red, 4);
                g.DrawLine(pen,new Point(10,10),new Point(100,100));
                bm.Save(Application.StartupPath + @"1.png");
                g.Dispose();
                bm.Dispose();
    

      

  • 相关阅读:
    使用Fiddler和雷电模拟器抓取安卓https请求
    Robot Framework -- 安装接口测试库
    Robot Framework --为了进行Web测试,安装SeleniumLibrary外部库
    robotframework+python3+eclipse+RED自动化测试框架初学笔记
    LeetCode Weekly Contest 27
    LeetCode Weekly Contest 26
    京东4.7实习笔试题
    牛客网模拟笔试 2
    4.1几道最近的题目
    网易3.25实习笔试
  • 原文地址:https://www.cnblogs.com/yaosj/p/10489979.html
Copyright © 2011-2022 走看看