就是编写一个c# 程序将文本文件生成图片文件
- 提问者网友:却不属于对方
- 2021-04-04 16:11
- 五星知识达人网友:白昼之月
- 2021-04-04 17:33
{
//判断字符串不等于空和null
if (content == null || content.Trim() == String.Empty)
return;
//创建一个位图对象
Bitmap image = new Bitmap((int)Math.Ceiling((content.Length * 18.0)), 30);
//创建Graphics
Graphics g = Graphics.FromImage(image);
try
{
//清空图片背景颜色
g.Clear(Color.White);
Font font = new Font("Arial", 15.5f, (FontStyle.Bold));
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Black, Color.DarkRed, 1.2f, true);
g.DrawString(content, font, brush, 2, 2);
//画图片的边框线
g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
image.Save("d:/001.jpg");
}
finally
{
g.Dispose();
image.Dispose();
}
}
这个方法可以把你传入的字符串画成图片保存起来,还需要什么自己再加追问如果是winform呢追答这个方法也可以用啊,你传入一个字符串,调用这个方法就会生成这个字符串的图片,然后保存在d:/001.jpg,
把这个方法放进你的代码里,就在你的Form_Load里写 string a="1234";
CreateImage(a);
就行了追问怎样让其中的字体不产生乱码追答没有乱码啊,你传入的是字符串,怎么还有乱码问题追问我用的是winform做文本转化图片工具,不止有英文还有一些汉字,转化时汉字出现乱码,另外再问一下怎样给需要转化的内容分页;追答
private void button1_Click(object sender, EventArgs e)
{
CreateImage("这是字符串测试,000s
efawef"); MessageBox.Show("成功");
}
private void CreateImage(string content)
{
//判断字符串不等于空和null
if (content == null || content.Trim() == String.Empty)
return;
//创建一个位图对象
Bitmap image = new Bitmap((int)Math.Ceiling((content.Length * 32.0)), 80);
//创建Graphics
Graphics g = Graphics.FromImage(image);
try
{
//清空图片背景颜色
g.Clear(Color.White);
Font font = new Font("Arial", 15.5f, (FontStyle.Bold));
System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Black, Color.DarkRed, 1.2f, true);
g.DrawString(content, font, brush, 2, 2);
//画图片的边框线
g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
image.Save("d:/001.jpg");
}
finally
{
g.Dispose();
image.Dispose();
}
}
你再试试,没问题啊,我这就是这样
- 1楼网友:等灯
- 2021-04-04 18:40