命名空间:

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(@"images\pic.jpg");

Graphics g=Graphics.FromImage(img);

}

c#创建画布_WinForm GDI编程:Graphics画布类相关推荐

  1. c#创建画布_C#GDI+编程基础(一:Graphics画布类)

    GDI+存在的意义:将变成与具体硬件实现细节分开. GDI+步骤:获取画布,绘制图像.处理图像 命名空间: using System.Drawing;//提供对GDI+基本图形功能的访问 using ...

  2. GDI+编程说明及小结

    原文地址:http://blog.csdn.net/byxdaz/article/details/5972759 GDI+(Graphics Device Interface Plus图形设备接口加) ...

  3. MFC之GDI GDI+ 编程实例剖析

    GDI和GDI+编程实例剖析 1.基本概念  GDI在Windows中定义为Graphics Device Interface,即图形设备接口,是Windows API(Application Pro ...

  4. GDI编程注意点-1

    最近接触GDI编程比较多,就把常见的技巧和注意点整理成一个系列吧,希望对大家有帮助. 1.TextOut的基本使用 TextOut的属于比较老的文本输出函数,但是简单的文本输出和格式控制使用它非常方便 ...

  5. MFC使用GDI+编程设置

    VC2005"项目/*属性"菜单项,打开项目的属性页窗口,先选"所有配置",再选"配置属性/链接器/输入"项,在右边上部的"附加依 ...

  6. Windows GDI和GDI+编程实例剖析(1)

    Windows GDI和GDI+编程实例剖析(1) 作者:宋宝华  e-mail:21cnbao@21cn.com 1.基本概念 GDI在Windows中定义为Graphics Device Inte ...

  7. Delphi XE GDI+编程

    1.准备工作 GDI+(Graphics Device Interface Plus 图形设备接口加)是 Windows XP 和 Windows Server 2003操作系统的子系统,也是.NET ...

  8. 创建模板_UG中如何创建属于自己的编程模板界面?

    点击关注 不迷路 ◆UG12如何实现多窗口显示部件 ◆[回转]命令 ◆实体建模工具拉伸 ◆UG12如何提醒自动保存时间 ◆UG12如何对实体产品剖视 先给大家出一道感性的推理题: 从前,有一个被巫师施 ...

  9. android里面画布快照,自定义 View - Canvas - 画布操作和快照

    操作 API 备注 移动画布 translate(float dx, float dy) -- 画布旋转 rotate(float degrees) -- 画布旋转 rotate(float degr ...

  10. C#GDI+编程基础

    C#GDI+编程基础(一) C#GDI+基础(二)画刷详解 C#GDI+图像处理 转载于:https://www.cnblogs.com/halou/archive/2013/02/18/291626 ...

最新文章

  1. VS调试时提示此项目已经过期
  2. Python分析离散心率信号(下)
  3. 2019河南对口高职高专计算机,2019年河南普通高招最后一个批次 高职高专批正式投档...
  4. CF1100F Ivan and Burgers(线性基)
  5. ElasticSearch 未授权访问记录(端口:9200)
  6. 小朋友(洛谷-P3852)
  7. ARM(AM5728)板移植VSFTPD
  8. TextTopicNet:CMU开源无标注高精度自监督模型
  9. IOS启程06—iOS设置圆角图片
  10. 2020年创业公司到底过得怎么样?数据分析来为你揭晓
  11. 【报告分享】2020年B站UP主价值研究报告.pdf(附下载链接)
  12. 洛谷 P4017 最大食物链计数
  13. 2019长江课堂作业答案_2019版长江课堂作业答案语文四年级
  14. 银行业9大数据科学应用案例
  15. collect2: error: ld returned 1 exit status(Linux下Gcc编译问题)
  16. 【动态系统的建模与分析】一阶系统的单位阶跃响应+时间常数-笔记
  17. 打通WordPress和微信公众号
  18. google protobuf源码分析1
  19. 关于win11 碍眼的主文件夹的有效删除办法
  20. IDEA 打包项目时xml,yml,properties等文件不复制

热门文章

  1. EXCEL姓名转换为拼音缩写
  2. 计算机学院 名言,计算机系网络毕业名言
  3. python的十句名言_“洗 脑”最厉害的10句名言!经典!
  4. c 语言万年历 节日查询,C语言 程序设计 节日查询和任务提醒系统万年历.doc
  5. laravel+redis通过api简单实现微博登陆注册关注取消关注发布信息等
  6. 2022年江苏省职业院校技能大赛网络搭建与应用赛项中职样卷
  7. 解决W5500,DHCP获取IP地址失败的问题,移植官方例程需要特别注意!!!
  8. Windows socket之IOCP实例----IOCP开发驾照理论考试系统
  9. python爬虫——30行代码爬取论坛数据
  10. c语言 fflush stdin,C语言函数:fflush(stdin)