C#中关于GDI+输出的问题

aaaaaaaa085

aaaaaaaa085

2016-01-29 12:56

C#中关于GDI+输出的问题,C#中关于GDI+输出的问题
在.net Framework的框架中有很多操作各种图形的函数,包括:点,线,面等等,构成的各种各样的丰富的图象。
在这里我主要是介绍在.Net Framework中GDI+下的TEXT(文本)的操作。首先以一个小小的程序开始:
建立一个Windows应用程序
在窗体上添加一个Button控件 和 一个PictureBox控件.
在Button控件的事件中添加,如下代码:
SizeF textSize ;//定义一个SizeF的变量,而SizeF的描述:
//存储有序浮点数对,通常为矩形的宽度和高度。
Graphics g;
Brush myBrush ;//定义一个刷子。
Font myFont = new Font("Times new Roman", 80, FontStyle.Bold);
//定义要输出字体的样式和大小
g = pictureBox1.CreateGraphics();//CreateGraphics 方法
也可以使用某控件或窗体的 CreateGraphics 方法来获取对 Graphics 对象的引用,该对象表示该控件或窗体的绘图表面
g.Clear(Color.White);// 清除整个绘图面并以指定背景色填充。
string str = "Kevin";//要输出的文本
textSize = g.MeasureString(str,myFont);// 测量用指定的 Font 对象绘制的指定字符串。
myBrush=new HatchBrush(HatchStyle.DashedUpwardDiagonal,Color.Blue,Color.White);
//这里使用的是HatchBrush画刷。
g.DrawString(str,myFont,myBrush,(pictureBox1.Width/4),(pictureBox1.Height/2));

//输出文本


当然如果将上述代码在变一下的话。就是另外一番风景啊~~

SizeF textSize ;
Graphics g;
Brush myBrush;
Single xLocation,yLocation;
Matrix myMatrix;
Font myFont = new Font("Times new Roman", 80, FontStyle.Bold);
g = pictureBox1.CreateGraphics();
g.Clear(Color.White);
string str = "Kevin";
textSize = g.MeasureString(str,myFont);
xLocation = (pictureBox1.Width/4)-5;
yLocation =(pictureBox1.Height/2-5);
g.TranslateTransform(xLocation,yLocation);
myMatrix = g.Transform;
myMatrix.Shear(1,0);
g.Transform = myMatrix;
myBrush=new HatchBrush(HatchStyle.DashedUpwardDiagonal,Color.Blue,Color.White);
g.DrawString(str,myFont,myBrush,0,0);


SizeF textSize ;
Graphics g;
Brush myBrush = Brushes.Blue;
Brush backBrush= Brushes.Gray;
Single xLocation,yLocation;
Font myFont = new Font("Times new Roman", 80, FontStyle.Bold);
g = pictureBox1.CreateGraphics();
g.Clear(Color.White);
string str = "Kevin";
textSize = g.MeasureString(str,myFont);
xLocation = (pictureBox1.Width/4)-5;
yLocation =(pictureBox1.Height/2-5);
g.DrawString(str,myFont,backBrush,(pictureBox1.Width/4),(pictureBox1.Height/2));
g.DrawString(str,myFont,myBrush,xLocation,yLocation);


这就是我想给各位的一个非常简单的操作文本程序。
展开更多 50%)
分享

猜你喜欢

C#中关于GDI+输出的问题

电脑网络
C#中关于GDI+输出的问题

Visual C++.NET GDI+编程基础

C语言教程 C语言函数
Visual C++.NET     GDI+编程基础

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

关于C#中的结构(下)

电脑网络
关于C#中的结构(下)

带输出参数的存储过程的使用及在C#中调用问题

电脑网络
带输出参数的存储过程的使用及在C#中调用问题

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

关于C#调用Office Web Components绘图的问题

电脑网络
关于C#调用Office Web Components绘图的问题

c#写的五子棋程序 供学习WinForms的鼠标事件和使用GDI+

电脑网络
c#写的五子棋程序 供学习WinForms的鼠标事件和使用GDI+

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《天天飞车》夺宝技巧分享

《天天飞车》夺宝技巧分享

连载3:利用PHP创建由Oracle驱动的SOAP服务

连载3:利用PHP创建由Oracle驱动的SOAP服务
下拉加载更多内容 ↓