GDI+ 绘图基础-图形设备&创建Graphics对象

@1.图形设备接口

GDI+(Graphcis Device Interface Plus,图形设备接口)是Microsoft.Net中实现图形、图像及文字处理的W32API。所有的GDI+功能都包含在C#系统的System、System.Drawing、System.Drawing.Image、System.Drawing.Drawing2D和System.Drawing.Text等命名空间的各个类中,图形图像处理中常用的命名空间如下:

System:包括常用基础数据类型和24个子命名空间

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

System.Drawing.Drawing2D:提供高级的二维和向量图形功能。命名空间包括渐变画笔,Matrix类和GraphicsPath类

System.Drawing.Imaging:提供高级的GDI+图像处理功能

@2.创建Graphics对象

Graphics是GDI+的核心,它包含在System命名空间内。在进行图形设计或图形处理时,必须首先使用Graphics类创建一个Graphics对象,然后使用Graphics对象的方法绘图、显示文本或者处理图像,这是图形设计过程一般过程。

通常使用一下三种方法创建一个Graphics对象:

a、利用窗体或者控件的Paint事件中的PaintEventrgs

利用窗体或者控件的Paint事件中的PaintEventrgs方法建立对图形对象的引用。

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

b.利用窗体或某个控件的CreateGraphics方法

利用窗体或某个控件的CreateGraphics方法建立Graphics对象的引用,所建对象是该控件或窗体的绘图区域

Graphics g=this.CreateGraphics();

c.利用Graphics类的FromImage静态方法

利用Graphics类的FromImage静态方法建立Graphics对象

Image img=Image.FromFile("jl.jpg");
Graphics g=Graphics.FromImage(img);

创建Graphics对象后,就可以绘制图形,显示文本或者操作对象,在图形图像处理程序设计中,与Graphics对象一起使用的对象有以下几种:

Pen类:用于绘制线条,勾勒形状轮廓或呈现其他几何表现形式

Brush:用语填充图形区域,如实心形状,图像或文本

Font:提供有关在呈现文本时要使用什么形状的说明

Color:表示要使用的不同形状

时间: 2024-10-10 04:58:56

GDI+ 绘图基础-图形设备&创建Graphics对象的相关文章

Windows GDI绘图基础知识

一.Windows可以画直线.椭圆线(椭圆圆周上的曲线)和贝塞尔曲线.////////////7 个画线函式是:(1)画直线LineTo    BOOL LineTo(HDC hdc,int nXEnd,int nYEnd);结合MoveToEx函数使用BOOL MoveToEx(HDC hdc,int X,int Y,LPPOINT lpPoint);Point记录了旧的坐标点(先前的当前位置).///注意:GetCurrentPositionEx (hdc, &pt) ;获得当前位置. (2

c#创建Graphics对象的三种方法

方法一.利用控件或窗体的Paint事件中的PainEventArgs 在窗体或控件的Paint事件中接收对图形对象的引用,作为PaintEventArgs(PaintEventArgs指定绘制控件所用的Graphics)的一部分,在为控件创建绘制代码时,通常会使用此方法来获取对图形对象的引用. 例如: //窗体的Paint事件的响应方法 复制代码代码如下: private void form1_Paint(object sender, PaintEventArgs e) { Graphics g

无法从带有索引像素格式的图像创建graphics对象(转)

大家在用 .NET 做图片水印功能的时候, 很可能会遇到 “无法从带有索引像素格式的图像创建graphics对象”这个错误,对应的英文错误提示是“A Graphics object cannot be created from an image that has an indexed pixel format" 这个exception是出现在 System.Drawing.Graphics g = System.Drawing.Graphics.FromImage("图片路径"

MFC GDI绘图基础

一.关于GDI的基本概念 什么是GDI? Windows绘图的实质就是利用Windows提供的图形设备接口GDI(Graphics Device Interface)将图形绘制在显示器上. 在Windows操作系统中,动态链接库C:/WINDOWS/system32/gdi32.dll(GDI Client DLL)中定义了GDI函数,实现与设备无关的包括屏幕上输出像素.在打印机上输出硬拷贝以及绘制Windows用户界面功能.在Visual C++6.0中的头文件C:/Program Files

JavaSE8基础 多态 创建子类对象的时候,先对初始化父类

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        代码: class TestFather { public TestFather() { System.out.println("TestFather"); } } class TestSon { public TestSon() { System.out.println("TestSon&quo

Java基础之创建实例化对象的方式

Java中创建(实例化)对象的五种方式  1.用new语句直接创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法.如:Object obj = Class.forName("java.lang.Object").newInstance(); 4.调用对

GDI+创建Graphics对象的2种方式

1.this.CreateGraphics()     // 调用控件的CreateGraphics()方法 2.在OnPaint事件中,PaintEventArgs类型的参数e对象的Graphics属性 另外:在窗体的Load事件中绘图不成功的原因是,Load事件在Paint事件之前执,,Paint会覆盖Load中已绘完的图形.

C#GDI+编程基础(一:Graphics画布类)

GDI+存在的意义:将变成与具体硬件实现细节分开. GDI+步骤:获取画布,绘制图像.处理图像 命名空间: using System.Drawing;//提供对GDI+基本图形功能的访问 using System.Drawing.Drawing2D;//提供高级的二维和矢量图像功能 using System.Drawing.Imaging;//提供高级GDI+图像处理功能 using System.Drawing.Printing;//提供打印相关服务 using System.Drawing.

如何:创建用于绘制的 Graphics 对象

创建图形对象 在窗体或控件的 Paint 事件中接收对图形对象的引用,作为 PaintEventArgs 的一部分. 在为控件创建绘制代码时,通常会使用此方法来获取对图形对象的引用. 同样,您也可以在处理 PrintDocument 的 PrintPage 事件时获取作为 PrintPageEventArgs 的属性的图形对象. - 或 - 调用某控件或窗体的 CreateGraphics 方法以获取对 Graphics 对象的引用,该对象表示该控件或窗体的绘图图面. 如果想在已存在的窗体或控件