zoukankan      html  css  js  c++  java
  • WinForm GDI编程:Graphics画布类

    命名空间:

    using System.Drawing;//提供对GDI+基本图形功能的访问

    using System.Drawing.Drawing2D;//提供高级的二维和矢量图像功能

    using System.Drawing.Imaging;//提供高级GDI+图像处理功能

    using System.Drawing.Printing;//提供打印相关服务

    using System.Drawing.Text;//提供高级GDI+排版功能

    using System.Drawing.Design;//扩展设计时,用户界面逻辑和绘制的类。用于扩展,自定义

    画图工具:

     Graphics(画布):类封装一个GDI+绘图图面,提供将对象绘制到显示设备的方法,Graphics与特定的设备上下文关联。画图方法被包括在  Graphics类中,在画任何对象之前都需要创建一个Graphics类实例作为画图 

    创建画布三种方法:  

    1.利用控件或窗体的Paint事件的PaintEventArgs  

    适用场景:为控件创建绘制代码。

    //窗体的Paint事件响应方法:

    private void Form1_Paint(object sender, PaintEventArgs e)  

    {          

          Graphics g = e.Graphics;  

    }

    //直接重载控件或者窗体的OnPaint方法:  

    protected override void OnPaint(PaintEventArgs e)        

    {            

        base.OnPaint(e);            

        Graphics g = e.Graphics;        

    }

     注意:Paint事件在重绘控件时发生

     2.调用某控件或窗体的CreateGraphics方法以获取对Graphics对象的引用,该对象表示控件或窗体的绘图图面。  

    适用场景:在已经存在的窗体或控件上绘图

     private void button1_Click(object sender, EventArgs e)

    {

        Graphics g = this.CreateGraphics();

        g.Dispose();

    }

     3.由从Image继承的任何对象创建Graphics对象  

    适用场景:需要更改已经存在的图像

     private void button1_Click(object sender, EventArgs e)  

     {          

        Image img = Image.FromFile(@"imagespic.jpg");          

        Graphics g=Graphics.FromImage(img);    

    }

  • 相关阅读:
    Java Mockito 笔记
    J2EE 练习题
    CXF 教程 (二)
    CXF 教程(一)
    Java 动态代理
    常用 Git 命令汇总
    JXL 简单示例
    Visual Studio 技巧
    TreeView双击节点而不改变节点的折叠/展开状态
    称3次,找出坏鸡蛋
  • 原文地址:https://www.cnblogs.com/jmy9/p/10781718.html
Copyright © 2011-2022 走看看