把文本以图片的形式保存

private void ToConvert_Click(object sender, EventArgs e)
{
string strPath = System.Windows.Forms.Application.StartupPath;
ConvertTextFileToImage(strPath + @"\文件\aa.txt", strPath + @"\文件\SSS.png");
pictureBox1.Image = Image.FromFile(strPath + @"\文件\SSS.png");
}

void ConvertTextFileToImage(String textFile, String imageFile)
{
System.Drawing.Font drawFont = new System.Drawing.Font("宋体", 12);
System.Drawing.Bitmap image = new System.Drawing.Bitmap(1, 1);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image);
String text = System.IO.File.ReadAllText(textFile, Encoding.GetEncoding("GB2312"));
System.Drawing.SizeF sf = g.MeasureString(text, drawFont, 1024); //设置一个显示的宽度
//MeasureString测量用指定的 System.Drawing.Font 绘制的指定字符串。像素为单位
image = new System.Drawing.Bitmap(image, new System.Drawing.Size(Convert.ToInt32(sf.Width), Convert.ToInt32(sf.Height)));
g = System.Drawing.Graphics.FromImage(image);
g.Clear(System.Drawing.Color.LightGreen);
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
g.DrawString(text, drawFont, System.Drawing.Brushes.Black, new System.Drawing.RectangleF(new System.Drawing.PointF(0, 0), sf));
image.Save(imageFile, System.Drawing.Imaging.ImageFormat.Png);
g.Dispose();
image.Dispose();
}

posted @ 2014-04-30 10:22  ChineseMoonGod  阅读(257)  评论(0编辑  收藏  举报