using System.Drawing; using System.IO; using System.Drawing.Imaging; private void AddTextToImg(string fileName,string text) { if(!File.Exists(MapPath(fileName))) { throw new FileNotFoundException("The file don't exist!"); } if( text == string.Empty ) { return; } //还需要判断文件类型是否为图像类型,这里就不赘述了,前端框架分享 System.Drawing.Image image = System.Drawing.Image.FromFile(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); //输出处理后的图像,这里为了演示方便,我将图片显示在页面中了 Response.Clear(); Response.ContentType = "image/jpeg"; Response.BinaryWrite( ms.ToArray() ); g.Dispose(); bitmap.Dispose(); image.Dispose(); }
调用时很简单,前端UI分享
AddTextToImg("me.jpg","程序人生http://www.iteye.com/topic/1132907/");
一切OK了,感觉.net确实好强大,这些功能在Asp中可是奢侈品了,而在.Net环境中却能轻而易举的完成!
相关推荐
在ASP.NET中为PDF添加水印是一项常见的任务,特别是在创建电子文档或报告时,为了保护版权或标明机密性,通常会使用水印。本文将详细介绍如何使用ASP.NET技术为PDF文件添加水印。 首先,我们需要理解PDF水印的基本...
### 在ASP.NET中为图像添加版权信息的方法 随着互联网的发展,数字版权保护变得越来越重要。在许多场景下,比如电子商务网站、在线画廊等,都需要为上传的图像添加版权信息或者水印,以确保原创作者的权利不受侵害...
在***中为图像加入水印并保存为Jpg格式涉及的主要知识点包括以下几个方面: ***基础:***是一种用于构建动态网站和网络应用的服务器端技术。它支持多种编程语言,其中C#是主要的编程语言之一。 2. System.Drawing...
在这个场景中,我们关注的是如何在ASP.NET环境中为网站图片添加水印,以实现对图片的版权保护或者品牌宣传。水印可以是文字、图像或两者结合,它们被叠加在原图上,通常位于图像的角落或中央,不影响主要视觉内容,...
综上所述,Asp.net实现数字水印效果涉及到了Web开发、图像处理以及版权保护等多个领域的知识,通过合理利用Asp.net的特性以及第三方库,可以有效地实现在Web应用中为图像添加安全且美观的水印。
在ASP.NET中,你可以在服务器端代码(如C#的Page_Load事件)中执行上述步骤,然后将处理后的图像返回给客户端浏览器。此外,如果需要处理大量图片,可以考虑使用异步处理或者多线程来提高性能。 总结起来,给图片...
总结起来,在ASP.NET Core中为上传图片添加水印,你需要: 1. 接收上传的文件(`IFormFile`)。 2. 将文件内容读入内存流。 3. 使用`Image.FromStream`创建图像对象。 4. 创建`Graphics`对象,并用它在图像上绘制...
【ASP.NET编程知识】.NET生成水印更好的方法实例代码主要介绍了两种在.NET环境中为图片添加水印的技术,包括基于System.Drawing.Image的传统方法和利用Direct2D/WIC/DirectWrite的高级方法。这两种方法各有特点,...
【C#.NET 图片水印添加代码】是一个用于在C#.NET环境中为图像添加水印的类库。这个代码示例提供了将一个图像(水印)叠加到另一个图像(源图像)上的功能,同时允许调整水印的位置和透明度。以下是对这个代码的详细...
FreeTextBox 是一个流行的开源ASP.NET富文本编辑器控件,其3.x版本提供了更丰富的功能和改进。在本文中,我们将深入探讨如何在FreeTextBox 3.x中为上传的图片添加水印,以及如何通过源码修改实现这一功能。这个过程...
本文将详细介绍一种通过自定义类在ASP.NET项目中实现图片水印的方法。 #### 一、环境搭建与配置 首先,在项目的`App_Data`目录下添加一个类文件,用于处理图片水印。为了确保类可以被正确调用,需要在`Web.config`...