首先先了解什么是 GDI 呢?GDI 是从 Windows 95 到 Windows 2000 随附的旧版绘图装置接口 (Graphics Device Interface), 是属于绘图方面的 API (Application Programming Interface)。因为应用程序不能直接控制硬件, 所以当我们要进行绘图的动作时, 必须透过 GDI 才能完成
GDI+ 又是什么呢?GDI+ 是 GDI 的后续产品, 是一种绘图装置接口, 可将应用程序和绘图硬件分隔, 让我们能够撰写与装置无关的应用程序。它可以让我们不需注意特定显示装置的详细数据, 便可在屏幕或打印机显示信息。我们可以呼叫 GDI+ 类别所提供的方法, 然后这些方法会适当地呼叫特定的装置驱动程序, 而完成绘图
System.Drawing   命名空间包含许多基本与进阶的绘图类别, 供程序开发者来完成各种绘图功能。本章在此仅介绍 System.Drawing 命名空间中一些常用的绘图类别。
 
 
 
在「GDI+」中所采用的坐标系统,与平时人们较常用的坐标系统不同,主要差别在于,一般的二维坐标系,x轴与y轴分别是往右往上递增(左图),而「GDI+」所采用的坐标系,x轴与y轴则分别是往右往下递增(右图) 
 
2、绘图基本单位
在数学定义中,坐标上的最基本元素:「点」,其实是个长度与宽度都无穷小的概念单位,但是在计算器图学中,作画的最基本元素是「像素(pixel)
当我们的屏幕分辨率设定为1024*768时,表示在x轴横坐标总共可以画1024个「像素」,在y轴纵坐标总共可以画768个「像素」
 
Graphics 类别是 GDI+ 的核心, 若要绘制任何图形, 都需要先取得 Graphics对象, 设定它的属性, 呼叫它的方法来完成绘图的工作。由于 Graphics 类别并未公开其建构子, 故无法以建构子来建立一个 Graphics 对象, 而是要从您所要绘图的组件取得一个 Graphics 对象, 其语法如下:
           Graphics g = 物件.CreateGraphics
n以上叙述中的对象可为窗体 (Form) 及 Control 类别的衍生类别 (例如, Label, PictureBox 及TextBox 等...), 当上述对象呼叫 CreateGraphics 方法后, 会传回一个Graphics 对象, 您可利用此一 Graphics 对象在建立它的对象上绘图。例如以下叙述可取得窗体的 Graphics 对象。
           Graphics g = this.CreateGraphics
nC# 的绘图至少必须藉助 Graphics 与 Pen 类别对象的协助, 其中 Graphics 对象就好比一块画布, 而 Pen 类别对象就是画笔了。以下叙述可产生画笔对象, 画笔的线条颜色为黑色, 线条粗细为3。
        drawPen = New Pen(Color.Black, 3)
n绘图方法
Graphics 类别的常用绘图方法有
ØDrawLine(直线)、
ØDrawRectangle (矩形)、
ØDrawEllipse (椭圆)、
ØDrawCurve (曲线)、
ØDarwArc (弧线)、
ØDrawPie (扇形)、
ØDrawLines (多边形)、
ØDrawPolygon (封闭多边形)
ØDrawBezier (贝兹曲线)等。
。。。。。。。。。。。。。。。。。。。。。。。。。。不定时更新。。。。。。。。。。。。
 

每天学一点---图形图像GDI编程的更多相关文章

  1. 超全面的.NET GDI+图形图像编程教程

    本篇主题内容是.NET GDI+图形图像编程系列的教程,不要被这个滚动条吓到,为了查找方便,我没有分开写,上面加了目录了,而且很多都是源码和图片~ (*^_^*) 本人也为了学习深刻,另一方面也是为了 ...

  2. [转]超全面的.NET GDI+图形图像编程教程

    本篇主题内容是.NET GDI+图形图像编程系列的教程,不要被这个滚动条吓到,为了查找方便,我没有分开写,上面加了目录了,而且很多都是源码和图片~ GDI+绘图基础 编写图形程序时需要使用GDI(Gr ...

  3. C#_GDI+详细教程(图形图像编程基础)

    第7章  C#图形图像编程基础 本章主要介绍使用C#进行图形图像编程基础,其中包括GDI+绘图基础.C#图像处理基础以及简单的图像处理技术. 7.1  GDI+绘图基础 编写图形程序时需要使用GDI( ...

  4. GDI+图形图像技术1

    System.Drawing命名空间提供了对GDI+基本图形功能的访问,其中一些子命名空间中提供了更高级的功能. GDI+由GDI发展而来,是Windows图形显示程序与实际物理设备之间的桥梁. GD ...

  5. C# .NET开发图形图像程序时提示"GDI+ 中发生一般性错误"

    今天突然收到一封信,说我那个极度复杂的Marshal的问题被解决了(http://www.cnblogs.com/hotcan/archive/2005/01/12/91007.html).顿时感觉好 ...

  6. 一步一步学Silverlight 2系列(32):图形图像综合实例—“功夫之王”剧照播放

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  7. 一步一步学Silverlight 2系列(31):图形图像综合实例—实现水中倒影效果

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  8. DSAPI多功能组件编程应用-图形图像篇(中)

    [DSAPI.DLL下载地址]   说到计算机上使用代码来处理各种图像特效,是一份太有挑战性的工作.以下涉及的所有图像效果均不是从网上复制的源码,而是本人试验数次并编写的,所以原理上会和网上的有所不同 ...

  9. GDI+编程说明及小结

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

随机推荐

  1. Python函数参数*args和**kwargs

    1. Python中使用*args和**kwargs #!/usr/bin/env python3 # coding: utf-8 # File: args_kwargs_demo.py # Auth ...

  2. docker——安装

    Docker划分为CE和EE.CE即社区版(免费,支持后期三个月),EE即企业版,强调安全,付费使用. #安装依赖包 yum install -y yum-utils device-mapper-pe ...

  3. Mysql—(2)—

    数据库存储引擎 (更多详见) 一 什么是存储引擎 mysql中建立的库===>文件夹 库中建立的表===>文件 现实生活中我们用来存储数据的文件应该有不同的类型:比如存文本用txt类型,存 ...

  4. 06 swap命令,进程管理,rmp命令与yum命令,源码安装python

    作业一: 1)开启Linux系统前添加一块大小为15G的SCSI硬盘 2)开启系统,右击桌面,打开终端 3)为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大 ...

  5. Tornado 自定义Form,session实现方法

    一. 自定义Tornado 验证模块 我们知道,平时在登陆某个网站或软件时,网站对于你输入的内容是有要求的,并且会对你输入的错误内容有提示,对于Django这种大而全的web框架,是提供了form表单 ...

  6. Codeforces Round #431 (Div. 2) C. From Y to Y

    题目: C. From Y to Y time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  7. 【android】 如何把gif图片下载到本地

    以上图片大家可以看到,虽然是个jpg格式的文件,但是本质上是个动图. 但是发现在咱的图片模块下,本地存储的图片只有一帧,问题出在哪里呢? http获取到的byte[]数据是没问题的 断点跟踪了下,发现 ...

  8. FFmpeg 入门(2):输出视频到屏幕

    本文转自:FFmpeg 入门(2):输出视频到屏幕 | www.samirchen.com SDL 我们这里使用 SDL 来渲染视频到屏幕.SDL 是 Simple Direct Layer 的缩写, ...

  9. FileSystemWatcher监听文件是否有被修改

    作用:监听文件系统更改通知,并在目录或目录中的文件更改时引发事件. 需求:监听特定文件是否修改,然后做出相应的操作. 方法: ①利用一个线程,一直去查找该指定的文件是否有被修改,如果修改则操作特定步骤 ...

  10. Redis学习笔记之Redis单机,伪集群,Sentinel主从复制的安装和配置

    0x00 Redis简介 Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server). Redis的键值 ...