时间:2016-02-16 00:17 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【C# 添加文字水印类代码】,下面是详细的讲解!
C# 添加文字水印类代码
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.IO;
using System.Drawing.Imaging;
namespace Chen
{
public class warterfont
{
public void addtexttoimg(string filename, string text)
{
if (!File.Exists(System.Web.HttpContext.Current.Server.MapPath(filename)))
{
throw new FileNotFoundException("the file don't exist!");
}
if (text==string.Empty)
{
return;
}
//还需要判断文件类型是否为图像类型,这里就不赘述了
Image image=Image.FromFile(System.Web.HttpContext.Current.Server.MapPath(filename));
Bitmap bitmap=new Bitmap(image, image.Width, image.Height);
Graphics g=Graphics.FromImage(bitmap);
float fontsize=12.0f; //字体大小
float textwidth=text.Length * fontsize; //文本的长度
//下面定义一个矩形区域,以后在这个矩形里画上白底黑字
float rectx=0;
float recty=0;
float rectwidth=text.Length * (fontsize + 8);
float rectheight=fontsize + 8; //声明矩形域
RectangleF textarea=new RectangleF(rectx, recty, rectwidth, rectheight);
Font font=new Font("宋体", fontsize); //定义字体
Brush whitebrush=new SolidBrush(Color.White); //白笔刷,画文字用
Brush blackbrush=new SolidBrush(Color.Black); //黑笔刷,画背景用
g.FillRectangle(blackbrush, rectx, recty, rectwidth, rectheight);
g.DrawString(text, font, whitebrush, textarea);
MemoryStream ms=new MemoryStream(); //保存为jpg类型
bitmap.Save(ms, ImageFormat.Jpeg); //输出处理后的图像,这里为了演示方便,我将图片显示在页面中了
bitmap.Save(System.Web.HttpContext.Current.Server.MapPath("/" + "aa.jpg"), ImageFormat.Jpeg); //保存到磁盘上
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.ContentType="image/jpeg";
System.Web.HttpContext.Current.Response.BinaryWrite(ms.ToArray());
g.Dispose();
bitmap.Dispose();
image.Dispose();
}
}
}
关于C# 添加文字水印类代码的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【ASP】ASP.NET中内嵌页面代码的一个问题-NET-内
- 【As】Asp.net中的页面乱码的问题-sp--pn-ne-et
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【404页面】ASP.NET设置404页面返回302HTTP状态码
- 【asp】asp.net开发中常见公共捕获异常方式总结(
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
