基于ASPJPEG 制作了一个梦寐已久的批量水印工具步骤

网络整理 - 09-02

基于ASPJPEG 制作了一个梦寐已久的批量水印工具步骤,需要的朋友可以参考下。

一、为图片添加水印


<%
Dim Jpeg ””//声明变量
Set Jpeg = Server.CreateObject(“Persits.Jpeg”) ””//调用组件
Jpeg.Open Server.MapPath(“aaa.JPG”) ””//源图片位置
Jpeg.Canvas.Font.Color = &H000000 ””//水印字体颜色
Jpeg.Canvas.Font.Family = “宋体” ””//水印字体
Jpeg.Canvas.Font.Size = 14 ””//水印字体大小
Jpeg.Canvas.Font.Bold = False ””//是否粗体,粗体用:True
Jpeg.Canvas.Font.BkMode = &HFFFFFF ””//字体背景颜色
Jpeg.Canvas.Print 10, 10, “不败顽童工作室” ””//水印文字,两个数字10为水印的xy座标
Jpeg.Save Server.MapPath(“”) ””//生成有水印的新图片及保存位置
Set Jpeg = Nothing ””//注销组件,释放资源
Response.Write “<img src=http://www.jzxue.com/wangzhankaifa/asp/201004/aaa_05.jpg>” ””//在该页显示生成水印后的图片
%>


二、生成缩略图


<%
Dim Jpeg ””//声明变量
Set Jpeg = Server.CreateObject(“Persits.Jpeg”) ””//调用组件
Jpeg.Open Server.MapPath(“aaa.JPG”) ””//原图位置
Jpeg.Width = Jpeg.OriginalWidth/4 ””//设图片宽度为原图的四分之一
Jpeg.Height = Jpeg.OriginalHeight/4 ””//设图片高度为原图的四分之一
Jpeg.Sharpen 1, 130 ””//设定锐化效果
Jpeg.Save Server.MapPath(“”) ””//生成缩略图位置及名称
Set Jpeg = Nothing ””//注销组件,释放资源
Response.Write “<img src=http://www.jzxue.com/wangzhankaifa/asp/201004/aaa_small.jpg>” ””//在该页显示生成缩略图
%>
[code]
aspjpeg组件高级使用方法介绍
aspjpeg是一款非常强大的图片处理组件,纯英文版本。不过早已经有免费版和破解版,但是对其进行详细与深入介绍的文章却是不多,即使有也只牵涉到图片缩略和图片水印。可能是因为纯英文的缘故。
这里我就是针对这些问题谈谈aspjpeg的高级用法。这里的技术主要包括:
图片缩略
图片水印
安全码技术
图片切割
图片合并
数据库支持
更多不常用的方法介绍
以及相关的一些实用技术
aspjpeg唯一点不足的就是输出方式比较单一。在这里,我们主要谈将图片处理保存后再调用的这种输出方法。另外,本人比较懒,所以有些代码仍然引用于原文档,不懂的地方偶会加以解释!
学过vb或者.net的同志肯定一看就明白了。刷子来着。呵呵。
一、图片缩略
[code]
<%
Set Jpeg = Server.CreateObject(“Persits.Jpeg”) 调用组件
Path = Server.MapPath(“images”) & “\clock.jpg” 待处理图片路径
Jpeg.Open Path 打开图片
高与宽为原图片的1/2
Jpeg.Width = Jpeg.OriginalWidth / 2
Jpeg.Height = Jpeg.OriginalHeight / 2
保存图片
Jpeg.Save Server.MapPath(“images”) & “\clock_small.jpg”
%>
[code]
<IMG SRC=http://www.jzxue.com/wangzhankaifa/asp/201004/”images/clock_small.jpg”> 查看处理的图片
二、图片水印
[code]
<%
Set Jpeg = Server.CreateObject(“Persits.Jpeg”)
Jpeg.Open Server.MapPath(“images/dodge_viper.jpg”)
开始写文字
Jpeg.Canvas.Font.Color = &H000000”” white 颜色
Jpeg.Canvas.Font.Family = “Courier New” 字体
Jpeg.Canvas.Font.Bold = True 是否加粗
Jpeg.Canvas.Print 10, 10, “Copyright (c) XYZ, Inc.”
打印坐标x 打印坐标y 需要打印的字符
以下是对图片进行边框处理
Jpeg.Canvas.Pen.Color = &H000000”” black 颜色
Jpeg.Canvas.Pen.Width = 2 画笔宽度
Jpeg.Canvas.Brush.Solid = False 是否加粗处理
Jpeg.Canvas.Bar 1, 1, Jpeg.Width, Jpeg.Height
起始X坐标 起始Y坐标 输入长度 输入高度
Jpeg.Save Server.MapPath(“images/dodge_viper_framed.jpg”) 保存
%>


三、安全码
安全玛的道理和加水印差不多,很多朋友问我要具体的代码技术,在这里我就写出来和大家分享,一般人我还不告诉他。呵呵。


<%
生成安全码的函数
function make_randomize(max_len,w_n) max_len 生成长度,w_n:0 可能包含字母,1:只为数字
randomize
for intcounter=1 to max_len
whatnext=int((1-0+1)*rnd+w_n)
if whatnext=0 then
upper=122
lower=97
else
upper=57
lower=48
end if
strnewpass=strnewpass & chr(int((upper-lower+1)*rnd)+lower)
next
make_randomize=strnewpass
end function
%>


生成安全码的图片。当然你要预先准备一张背景图哦


<%random_num=make_randomize(4,1) 生成4位数字的安全码
session(“random_num”)=random_num 为什么调用session,没有session的安全码是完全没有意义的。呵呵
Set Jpeg = Server.CreateObject(“Persits.Jpeg”) 调用组件
Jpeg.Open Server.MapPath(“infos/random_pic/random_index.gif”) 打开准备的图片
Jpeg.Canvas.Font.Color = &H006699
Jpeg.Canvas.Font.Family = “Arial Black”
Jpeg.Canvas.Font.Bold = false
Jpeg.Canvas.PrintText 0, -2, random_num
jpeg.save Server.MapPath(“infos/random_pic/random_index.bmp”) 保存
%>
<img src=http://www.jzxue.com/wangzhankaifa/asp/201004/”infos/random_pic/random_index.bmp” border=”0″ align=”absmiddle”>