国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#常用GDI+文字操作匯總

2020-01-24 02:28:35
字體:
來源:轉載
供稿:網友

本文實例匯總了C#常用GDI+文字操作,包含了文字的投影、倒影、旋轉等常見的效果,在進行C#應用程序開發中有不錯的實用價值。分享給大家供大家參考之用。具體如下:

一、投影文字

private void Form1_Paint(object sender, PaintEventArgs e){  //投影文字  Graphics g = this.CreateGraphics();  //設置文本輸出質量  g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;  g.SmoothingMode = SmoothingMode.AntiAlias;  Font newFont = new Font("Times New Roman", 48);  Matrix matrix = new Matrix();  //投射  matrix.Shear(-1.5f, 0.0f);  //縮放  matrix.Scale(1, 0.5f);  //平移  matrix.Translate(130, 88);  //對繪圖平面實施坐標變換、、  g.Transform = matrix;  SolidBrush grayBrush = new SolidBrush(Color.Gray);  SolidBrush colorBrush = new SolidBrush(Color.BlueViolet);  string text = "MINGRISOFT";  //繪制陰影  g.DrawString(text, newFont, grayBrush, new PointF(0, 30));  g.ResetTransform();  //繪制前景  g.DrawString(text, newFont, colorBrush, new PointF(0, 30));}

二、倒影文字

private void Form1_Paint(object sender, PaintEventArgs e){  //倒影文字  Brush backBrush = Brushes.Gray;  Brush foreBrush = Brushes.Black;  Font font = new Font("幼圓", Convert.ToInt16(40), FontStyle.Regular);  Graphics g = this.CreateGraphics();  string text = "MINGRISOFT";  SizeF size = g.MeasureString(text, font);  int posX = (this.Width - Convert.ToInt16(size.Width)) / 2;  int posY = (this.Height - Convert.ToInt16(size.Height)) / 2;  g.TranslateTransform(posX, posY);  int ascent = font.FontFamily.GetCellAscent(font.Style);  int spacing = font.FontFamily.GetLineSpacing(font.Style);  int lineHeight = System.Convert.ToInt16(font.GetHeight(g));  int height = lineHeight * ascent / spacing;  GraphicsState state = g.Save();  g.ScaleTransform(1, -1.0F);  g.DrawString(text, font, backBrush, 0, -height);  g.Restore(state);  g.DrawString(text, font, foreBrush, 0, -height);}

三、文字填充線條

private void Form1_Paint(object sender, PaintEventArgs e){  //使用圖像填充文字線條  TextureBrush brush = new TextureBrush(Image.FromFile(Application.StartupPath + "http://花.jpg"));  Graphics g = e.Graphics;  g.DrawString("MINGRISOFT", new Font("隸書", 60), brush, new PointF(0, 0)); }

四、旋轉文字

private void Form1_Paint(object sender, PaintEventArgs e){  //旋轉顯示文字  Graphics g = e.Graphics;  g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;  for (int i = 0; i <= 360; i += 10)  {   //平移Graphics對象到窗體中心 g.TranslateTransform(this.Width / 2, this.Height / 2); //設置Graphics對象的輸出角度 g.RotateTransform(i); //設置文字填充顏色 Brush brush = Brushes.DarkViolet; //旋轉顯示文字 g.DrawString("......MINGRISOFT", new Font("Lucida Console", 11f), brush, 0, 0); //恢復全局變換矩陣 g.ResetTransform();  }}

五、印版文字

private void Form1_Paint(object sender, PaintEventArgs e){  //印版文字  int i = 0;  Brush backBrush = Brushes.Black;  Brush foreBrush = Brushes.Violet;  Font font = new Font("Times New Roman", System.Convert.ToInt16(40), FontStyle.Regular);  Graphics g = this.CreateGraphics();  g.Clear(Color.White);  string text = "MINGRISOFT";  SizeF size = g.MeasureString(text, font);  Single posX = (this.Width - Convert.ToInt16(size.Width)) / 2;  Single posY = (this.Height - Convert.ToInt16(size.Height)) / 3;  while (i < Convert.ToInt16(20))  { g.DrawString(text, font, backBrush, posX - i, posY + i); i = i + 1;  }  g.DrawString(text, font, foreBrush, posX, posY);}

相信本文所述實例對大家的C#程序設計有一定的幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白玉县| 津南区| 肃宁县| 河源市| 泰和县| 祥云县| 呼和浩特市| 正定县| 自治县| 苗栗县| 铜鼓县| 东至县| 安丘市| 武清区| 桐庐县| 双江| 祥云县| 翼城县| 麻城市| 合作市| 奈曼旗| 克什克腾旗| 长丰县| 泰顺县| 靖江市| 邓州市| 利川市| 泗洪县| 于田县| 贵阳市| 霞浦县| 彭水| 广灵县| 治县。| 甘泉县| 阜宁县| 朝阳市| 宁河县| 牟定县| 安龙县| 涡阳县|