程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#編寫的藝術字類實例代碼

C#編寫的藝術字類實例代碼

編輯:關於C語言

廢話不多說了,直接給大家上代碼了,具體代碼如下所示:

代碼如下:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Drawing.Text; using System.Drawing.Drawing2D; using System.Data; using System.Text; using System.Windows.Forms; public partial class WordArt : UserControl//這是一個藝術字的控件 { //文本屬性 private string _text = "WordArt"; public string Caption { get { return _text; } set { _text = value; } } //字體以及大小 private Font _WordArtFont = new Font("宋體",15); public Font WordArtFont { get { return _WordArtFont; } set { _WordArtFont = value; } } //顏色 private Color _WordArtForeColor = Color.BlueViolet; public Color WordArtForeColor { get { return _WordArtForeColor; } set { _WordArtForeColor = value; } } //陰影的顏色 private Color _WordArtBackColor = Color.Gray; public Color WordArtBackColor { set { _WordArtBackColor = value; } get { return _WordArtBackColor; } } //文本輸出質量:呈現模式和平滑效果 private TextRenderingHint _TextRenderingHint = TextRenderingHint.ClearTypeGridFit; public TextRenderingHint WordArtTextRenderingHint { get { return _TextRenderingHint; } set { _TextRenderingHint = value; } } public SmoothingMode _SmoothingMode = SmoothingMode.AntiAlias; public SmoothingMode WordArtSmoothingMode { get { return _SmoothingMode; } set { _SmoothingMode = value; } } public WordArt() { InitializeComponent(); } //藝術字的形式:陰影,浮雕…… private WordArtEffectStyle _WordArtEffect=WordArtEffectStyle.projection;//投影為默認形式; public WordArtEffectStyle WordArtEffect { get { return _WordArtEffect; } set { _WordArtEffect = value; } } protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); Graphics g = this.CreateGraphics(); Brush backBrush=new SolidBrush(this.WordArtBackColor); Brush foreBrush=new SolidBrush(this.WordArtForeColor); SizeF size = g.MeasureString(this.Caption, this.WordArtFont); Single posX = (this.Width - Convert.ToInt16(size.Width)) / 2; Single posY = (this.Height - Convert.ToInt16(size.Height)) / 2; switch (this.WordArtEffect) { case WordArtEffectStyle.projection://投影效果 //設置文本輸出質量 g.TextRenderingHint = this.WordArtTextRenderingHint; g.SmoothingMode = this.WordArtSmoothingMode; Matrix matrix = new Matrix(); //投射 matrix.Shear(-1.5f, 0.0f); //縮放 matrix.Scale(1, 0.5f); //平移 matrix.Translate(120, 75); //對繪圖平面坐標實施變換 g.Transform = matrix;
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved