• 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();
    

      

  • 相关阅读:
    struct与class的区别
    C#锐利体验第五讲 构造器与析构器(转)
    Sort Table
    WinXP(NTFS分区下)Vista系统文件的删除方法
    关于上海居住证我们不得不说的实情!(转)
    让你眼花缭乱的JS代码~~
    ASP的URL重写技术(IIS的ISAPI)[转]
    JS实现从照片中裁切自已的肖像
    C#锐利体验第二讲 C#语言基础介绍(转)
    装箱和拆箱
  • 原文地址:https://www.cnblogs.com/yaosj/p/10489979.html
Copyright © 2020-2023  润新知