C#做了个相棋盘的图片

发布时间:2009年06月04日      浏览次数:795 次
//好长时间没有写博客了最近用C#做了个相棋盘的图片
//是因为前一段时间去一个公司面试他给我了一段代码让我给解释一下
//当时我只知道是一个图片的初始化
//他给我解释说是先给图片初始化后又在图片上加了几个字
//回来了就看了看图片这方面的资料就选生成了有字的图片
//后来又在网上看了个验证码的东东回来就做了做
//昨天没事就又想起做这个下面是代码
//
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Print();
}
private void Print()
{
Bitmap bit = new Bitmap(400, 520);
Graphics g = Graphics.FromImage(bit);
g.FillRectangle(new SolidBrush(Color.OrangeRed), new Rectangle(0, 0, 400, 520));
Pen pen = new Pen(new SolidBrush(Color.Bisque),2);
//行
for (int i = 1; i < 13;i++)
g.DrawLine(pen, new Point(40, 40*i), new Point(360, 40*i));
//上列
for (int i = 1; i < 10; i++)
g.DrawLine(pen, new Point(40 * i, 40), new Point(40 * i,240));
//下列
for (int i = 1; i < 10;i+=8 )
g.DrawLine(pen, new Point(40 * i, 40), new Point(40 * i, 480));
//列头列尾
for (int i = 2; i < 9; i++)
g.DrawLine(pen, new Point(40 * i, 280), new Point(40 * i, 480));
//交叉
int[] num1 ={ 4, 6, 6, 4, 4, 6, 6, 4 };
int[] num2 ={ 1, 3, 1, 3, 10, 12, 10, 12 };
for (int i = 0; i < 8; i+=2)
g.DrawLine(pen,new Point(40*num1[i],40*num2[i]),new Point(40*num1[i+1],40*num2[i+1]));
//添加字到图片上
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
g.DrawString("楚河 汉界", new Font(FontFamily.GenericSerif, 40, FontStyle.Regular, GraphicsUnit.Pixel), new SolidBrush(Color.Bisque),new PointF(80,240));
pictureBox1.Image = bit;
}
}
}
免责声明:本站相关技术文章信息部分来自网络,目的主要是传播更多信息,如果您认为本站的某些信息侵犯了您的版权,请与我们联系,我们会即时妥善的处理,谢谢合作!