ASP.NET简单的添加文字水印范例

用Asp.net实现文字水印,这里介绍一种简单的方法,虽然简单,但是感觉很实用,而且ASP.NET新手也容易理解,便于修改完善。下面先帖下代码,随后会介绍如何使用:

<%@ Import Namespace="System" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Page language="vb" %>
<script runat="server">
Dim FilePath As String = Server.MapPath("water.jpg")
Sub Page_Load(Sender As Object, E As EventArgs)
Dim image As System.Drawing.Image = System.Drawing.Image.FromFile( FilePath )
Dim g As Graphics = Graphics.FromImage(image)
g.DrawImage(image, 0, 0, image.Width, image.Height)
Dim f As Font = new Font("华文行楷", 40)
Dim b As Brush = new SolidBrush(Color.Black)
Dim s As String = Left(Request.QueryString("str"), 7)
g.DrawString(s, f, b, 20, 190)
image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg)
g.Dispose()
image.Dispose()
End Sub
</script>

在你的ASP.NET站点根目录下新建文件water.aspx,将上述代码复制进去并保存,在找一个供测试用的图片,就叫做water.jpg吧,然后在地址栏输入:

http://localhost/water.aspx?str=这是水印文字

看下页面上的图片,是不是在(20, 190)这个地方显示出了“华文行楷”字体的文字了。

对于水印的位置和字体以及图片文件都是可以自己定义的。另外如果地址栏参数中文无法显示的话,可能是你Asp.net的web.config设置不正确造成了,可参考下面的进行设置:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312"/>
</system.web>
</configuration>

这样中文字串就显示了,你就可以看到中文的水印了。。 是不是挺简单呢?

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...