用Asp.net实现简单的文字水印

asp.net

经常看见MOP上有人贴那种动态的图片,就是把一个字符串作为参数传给一个动态网页,就会生成一个带有这个字符串的图片,这个叫做文字水印。像什么原来的熊猫系列,还有后来的大树和金条,都挺有意思。这东西看着挺好玩的,想做个玩玩。查了查资料,发现用.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("Talk.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>

只要把这个代码存成一个aspx文件,比如Test.aspx。然后放到wwwroot里面(假设你的虚拟目录是默认的)。再做一个Talk.JPG的图片,就可以在(20, 190)这个地方打印出“华文行楷”这种字体的文字了。调用方法很简单:

http://localhost/Test.aspx?str=测试一下下!

对于打印的位置和字体还有图片文件都是可以自己设定的。另外,如果出现了以e文作为参数就可以正常显示,而对于中文就无法显示的情况,是因为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>

这样,就可以正常显示了。做个玩玩吧,挺好玩的。

时间: 2024-11-01 14:40:09

用Asp.net实现简单的文字水印的相关文章

用ASP.NETt实现简单的文字水印

asp.net 代码如下: <%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Drawing" %> <%@ Page language="vb" %> <script runat="server"> D

用ASP.NET实现简单的文字水印_实用技巧

代码如下: <%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Drawing" %> <%@ Page language="vb" %> <script runat="server">    Dim Fi

ASP.NET简单的文字水印功能

  用Asp.net实现文字水印,这里介绍一种简单的方法,虽然简单,但是感觉很实用,而且ASP.NET新手也容易理解,便于修改完善.下面先帖下代码,随后会介绍如何使用: 在你的ASP.NET站点根目录下新建文件water.aspx,将上述代码复制进去并保存,在找一个供测试用的图片,就叫做water.jpg吧,然后在地址栏输入: 看下页面上的图片,是不是在(20, 190)这个地方显示出了"华文行楷"字体的文字了. 对于水印的位置和字体以及图片文件都是可以自己定义的.另外如果地址栏参数中

Asp.net给图片加文字水印实例

用Asp.net实现文字水印,这里介绍一种简单的方法,虽然简单,但是感觉很实用,而且ASP.NET新手也容易理解,便于修改完善.    代码如下 复制代码 <%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Drawing" %> <%@ Page languag

Asp.net上传图片同时生成文字水印图,图片水印图,缩略图

  .aspx <body>     <form id="form1" runat="server">     <div>         <asp:FileUpload ID="FileUpload1" runat="server" /><br />         <asp:Button ID="Button1" runat="

Asp.net简单实现给图片增加文字水印_实用技巧

经常看见MOP上有人贴那种动态的图片,就是把一个字符串作为参数传给一个动态网页,就会生成一个带有这个字符串的图片,这个叫做文字水印.像什么原来的熊猫系列,还有后来的大树和金条,都挺有意思.就用Asp.net写了一个非常简单的.全部的代码如下: 复制代码 代码如下: <%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespa

ASp使用AspJpeg组件制作透明文字水印

aspjpeg|透明 技术支持: 1.aspjpeg能对图片水印进行透明度调整,不能对文字水印调整, 2.aspjpeg支持Binary,可以Jpeg.OpenBinary读取,可以Jpeg.sendBinary,也可Jpeg.Binary赋值思路: 1.把原始的图片数据二进制度赋值给TempA, 2.将文字水印处理后的图片数据二进制赋值给TempB, 3.以TempB作为"图片水印",附加在TempA上,调整透明度,输出就ok了 思路很简单,代码也很简单:<%LocalFile

Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)_实用技巧

复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; usi

asp.net MVC怎么给上传照片加文字水印,可以用js么

问题描述 这是前台代码<tr><td>图片:</td><td><inputtype="file"name="fileUpload"id="fileUpload"style="width:250px;"/></td><tdwidth="26%"><buttonid="sendBtn"type=&quo