c#中输入文本文字,将输入的文字生成图片

private void button1_Click(object sender, EventArgs e)
{
//获取文本
string text = this.txtName.Text;

//得到Bitmap(传入Rectangle.Empty自动计算宽高)
Bitmap bmp = TextToBitmap(text, this.txtName.Font, Rectangle.Empty, this.txtName.ForeColor, this.txtName.BackColor);

//用PictureBox显示
this.pictureBox1.Image = bmp;

//保存到桌面save.jpg
string directory = System.Environment.GetFolderPath(System.Environment.SpecialFolder.DesktopDirectory);
bmp.Save(directory + "\\save.jpg", ImageFormat.Jpeg);
}
//定义一个方法
/// <summary>
/// 把文字转换才Bitmap
/// </summary>
/// <param name="text"></param>
/// <param name="font"></param>
/// <param name="rect">用于输出的矩形,文字在这个矩形内显示,为空时自动计算</param>
/// <param name="fontcolor">字体颜色</param>
/// <param name="backColor">背景颜色</param>
/// <returns></returns>
private Bitmap TextToBitmap(string text, Font font, Rectangle rect, Color fontcolor, Color backColor)
{
Graphics g;
Bitmap bmp;
StringFormat format = new StringFormat(StringFormatFlags.NoClip);
if (rect == Rectangle.Empty)
{
bmp = new Bitmap(1, 1);
g = Graphics.FromImage(bmp);
//计算绘制文字所需的区域大小(根据宽度计算长度),重新创建矩形区域绘图
SizeF sizef = g.MeasureString(text, font, PointF.Empty, format);

int width = (int)(sizef.Width + 1);
int height = (int)(sizef.Height + 1);
rect = new Rectangle(0, 0, width, height);
bmp.Dispose();

bmp = new Bitmap(width, height);
}
else
{
bmp = new Bitmap(rect.Width, rect.Height);
}

g = Graphics.FromImage(bmp);

//使用ClearType字体功能
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
g.FillRectangle(new SolidBrush(backColor), rect);
g.DrawString(text, font, Brushes.Black, rect, format);
return bmp;
}

时间: 2024-10-09 22:56:27

c#中输入文本文字,将输入的文字生成图片的相关文章

实现:C#窗体中的文本框只能输入中文汉字,其他输入无效。问:正则表达式怎么用?

原文:实现:C#窗体中的文本框只能输入中文汉字,其他输入无效.问:正则表达式怎么用? private void textBox1_KeyPress(object sender, KeyPressEventArgs e) ? ? ? ? { ? ? ? ? ? ? Regex rg = new Regex("^[\u4e00-\u9fa5]$"); ? ? ? ? ? ? if (!rg.IsMatch(e.KeyChar.ToString()) && e.KeyChar

Iphone移动Web和safari下输入文本无法显示或者显示看不到的问题

情况是帮朋友调试Web app,在Android下显示正常,用iphone查看时输入文本框发现输入的文字都空白,加入背景上仍然看不到文字.代码如下:<div class="phone"><input type="number" value="" placeholder="请输入验证码" ></div>后来百度发现了解决方案,在文本框中加入style="line-height:nor

cell中的文本框————bug

根据要求需要制作一个报表,我一UItableView为主体,自定义cell,在cell中添加文本框以便输入相应字段, 要求:1,当我们改变表格对应行的内容时会自动计算相应列的总和[相信大家用过Excel 原理差不多了] 我再文本框失去焦点时,调用代理方法通知UItableView的页面进行计算并刷新数据源和表格 bug:导致文本框不能正常的获取焦点,但我们页面上已经有获取焦点的文本框时,又去点击另外的文本框,此时新的文本框不能获取焦点,但会弹出键盘,且键盘无法收起,通过监听文本框的代理发项,文本

更改IOS于UISearchBar撤消button底、搜索输入文本框背景中的内容和UISearchBar底

转载请标明出处:http://blog.csdn.net/android_ls/article/details/39993433 測试的手机IOS系统版本为:6.1.3,实现过程例如以下: 1.加入UISearchBar到父View _searchBar = [[UISearchBar alloc]init]; _searchBar.frame = CGRectMake(0, 0, self.view.frame.size.width, kSeachBarH); _searchBar.autor

修改IOS中UISearchBar的取消按钮背景、搜索内容输入文本框背景和UISearchBar的背景

转载请标明出处:http://blog.csdn.net/android_ls/article/details/39993433 测试的手机IOS系统版本号为:6.1.3,实现步骤如下: 1.添加UISearchBar到父View _searchBar = [[UISearchBar alloc]init]; _searchBar.frame = CGRectMake(0, 0, self.view.frame.size.width, kSeachBarH); _searchBar.autore

bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题

答案来自老外http://stackoverflow.com/questions/14795035/twitter-bootstrap-modal-blocks-text-input-field $('#myModal').on('shown', function() { $(document).off('focusin.modal'); }); 这个是国内同学的解决方法: http://www.oschina.net/question/226830_143869 //显示modal $('#m

在PowerPoint中自定义可输入文本的占位符

日常生活中,当我们设计多媒体课件时,默认的版式其实已经够用了.但是,很多时候,我们需要更加个性一点,所以,我们需要自定义很多东西.本文介绍在PowerPoint中自定义可输入文本的占位符. 一.占位符的概念 占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号. 二.PowerPoint(简称:PPT)简介 ppt,是演示文稿软件.演示文稿中的每一页就叫幻灯片,每张幻灯片都是演示文稿中既相互独立又相互联系的内容.我们这里要做的就是,给每一张幻灯片都加上占位符. 三.在幻灯片母版中加入占位

Android 在界面中显示以及输入文本信息 TextView和EditText

Android控件之TextView和EditTextTextView:显示文本框控件EditText:输入文本框TextView和EditText的常用属性TextView控件的常用属性android:id 控件的idandroid:layout_width 控件的宽度android:layout_height 控件的高度android:text 文本内容android:textSize 文本大小android:textColor 文本颜色android:background 控件背景Edit

输入文本框【提示文字】的设置与清空

<1> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>输入文本框提示文字的清空</title> <script src="Jquery/jquery-1.10.2.js" type="text/javascript"></script> <script type="text/ja

JS(javascript)动态判断输入文本框剩余可输入字符数

一.描述 我们在空间中发表状态,当我们输入一个字符,上面的剩余可输入字符数就会减一,直到输入的字符数达到之前设定的最大数量为止,效果如下图所示: 二.实现方法 首先,我们先确定文本框内的最大可输入长度,其次在输入一个字符抬起键盘的时候对输入文本框中的字符长度进行验证,并在动态显示在剩余可输入字符数中. 三.源代码 <%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib uri="