基于ASPJPEG 制作了一个梦寐已久的批量水印工具步骤(3)
来源:asp之家 发布时间:2011-02-28 10:39:00
标签:ASPJPEG,批量水印
========================================
今天给大家讲的是ASP给图片加水印的知识
ASP给图片加水印是需要组件的…常用的有aspjpeg和中国人自己开发的wsImage…前者有30天的免费…后者完全免费…当然我们要用国人的产品了..嘿嘿..
注册组件的方法:
命令提示符下输入”regsvr32 [Dll路径]” 就可以了
图片添加水印无非就是获得图片大小,然后把水印写上去..ASP代码只是起个控制组件的作用.用代码来说明一切吧.
一:获得图片大小(这里是用象素值表示的.学PhotoShop的朋友都应该明白)
代码如下:
<%
set obj=server.CreateObject(“wsImage.Resize”) ””””调用组件
obj.LoadSoucePic server.mappath(“25.jpg”) ””””打开图片,图片名字是25.jpg
obj.GetSourceInfo iWidth,iHeight
response.write “图片宽度:” & iWidth & “<br>” ””””获得图片宽度
response.write “图片高度:” & iHeight & “<br>” ””””获得图片高度
strError=obj.errorinfo
if strError<>”" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>
二:添加文字水印
代码如下:
<%
set obj=server.CreateObject(“wsImage.Resize”)
obj.LoadSoucePic server.mappath(“25.jpg”) ””””装载图片
obj.Quality=75
obj.TxtMarkFont = “华文彩云” ””””设置水印文字字体
obj.TxtMarkBond = false ””””设置水印文字的粗细
obj.MarkRotate = 0 ””””水印文字的旋转角度
obj.TxtMarkHeight = 25 ””””水印文字的高度
obj.AddTxtMark server.mappath(“txtMark.jpg”), “带你离境”, &H00FF00&, 10, 70
strError=obj.errorinfo ””””生成图片名字,文字颜色即水印在图片的位置
if strError<>”" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>
三:添加图片水印
代码如下:
<%
set obj=server.CreateObject(“wsImage.Resize”)
obj.LoadSoucePic server.mappath(“25.jpg”) ””””装载图片
obj.LoadImgMarkPic server.mappath(“blend.bmp”) ””””装载水印图片
obj.Quality=75
obj.AddImgMark server.mappath(“imgMark.jpg”), 315, 220,&hFFFFFF, 70
strError=obj.errorinfo ””””生成图片名字,文字颜色即水印在图片的位置
if strError<>”" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>
其实给图片添加水印就这么简单.然后我在说下WsImage.dll组件的另外两个主要用法.包括:
剪裁图片,生成图片的缩略图.
还是以我得习惯,用代码加注释说明:
剪裁图片:
代码如下:
<%
set obj=server.CreateObject(“wsImage.Resize”)
obj.LoadSoucePic server.mappath(“25.jpg”)
obj.Quality=75
obj.cropImage server.mappath(“25_crop.jpg”),100,10,200,200 ””””定义裁减大小和生成图片名字
strError=obj.errorinfo
if strError<>”" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>
详细注释:裁减图片用到了WsImage的CropImage方法.其中定义生成图片时候,100,10是左上角的裁减点,即离图片左边是100象素,顶端10象素.后两个200代表的是裁减的宽带和高和高度.
生成图片缩略图:
代码如下:
<%
set obj=server.CreateObject(“wsImage.Resize”)
obj.LoadSoucePic server.mappath(“25.jpg”) ””””加载图片
obj.Quality=75
obj.OutputSpic server.mappath(“25_s.jpg”),0.5,0.5,3 ””””定义缩略图的名字即大小
strError=obj.errorinfo
if strError<>”" then
response.write obj.errorinfo
end if
obj.free
set obj=nothing
%>
详细说明:
产生缩略图共有四种导出方式:
(1) obj.OutputSpic server.mappath(“25_s.jpg”),200,150,0
200为输出宽,150为输出高,这种输出形式为强制输出宽高,可能引起图片变形。
(2) obj.OutputSpic server.mappath(“25_s.jpg”),200,0,1
以200为输出宽,输出高将随比列缩放。
(3) obj.OutputSpic server.mappath(“25_s.jpg”),0,200,2
以200为输出高,输出宽将随比列缩放。
(4) obj.OutputSpic server.mappath(“25_s.jpg”),0.5,0.5,3
第一个0.5表示生成的缩略图是原图宽的一半,即表示宽缩小比例。
第二个0.5表示生成的缩略图是原图高的一半,即表示高缩小比例。
宽高的缩小比例一致意味着将对原图进行比例缩小。宽高的缩放比例如果大于1,则对原图进行放大。
昨天晚上搞到12点半,早上起床继续增强优化,写了这个ASP批量水印工具,这种水印效果是我梦寐已久的,甚爽!
水印效果如下:


猜你喜欢
- 本文实例总结了MySQL单表查询常见操作。分享给大家供大家参考,具体如下:创建fruits表:CREATE TABLE fruits( f_
- 因为需要检测一个一个链接中是否包含了IP地址,在这里需要使用到正则表达式 ,python完美的支持了正则表达式,在这里使用re模块来完成,对
- 本文web服务器使用的为apache。1. 安装apacheyum install -y httpd2. 配置apache修改apache配
- ECharts是一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器,底层依赖轻量级的Canvas类
- 千图成像也就是用N张图片组成一张图片的效果。制作方法有很多的,最常见的如用ps、懒人图云、foto-mosaik-edda这些制作。千图成像
- 第一章:基本的圆角框第二章:透明圆角化背景图片第三章:圆角化图片 第四章:CSS圆角框组件 V1.0序言:在我的文章《超圆滑圆角框的半完美解
- #!/usr/bin/env pythonimport sysfrom PyQt4 import QtGui,QtCoreimport ht
- pycurl是功能强大的python的url包,是用c语言写的,速度很快,比urllib和httplib都快调用方法:import pycu
- python制作超级玛丽游戏,供大家参考,具体内容如下这篇文章,我们优先介绍超级玛丽游戏中的多状态跳跃,和行走地图拖动的原理,然后实现。并实
- golang.org/x包放到了https://github.com/golang/text中,下载时需要先在本地建立golang.org/
- 遇到mysql ERROR 1045 这个问题搞了很久,自己记下来。方法是百度的,亲测有效。ERROR 1045 (28000): Acce
- 假设在搜索框search中输入:“asp 编程” 先得到输入框中的内容:search=request("search")
- 本文实例讲述了Python实现定制自动化业务流量报表周报功能。分享给大家供大家参考,具体如下:一 点睛本次实践通过定制网站5个频道的流量报表
- 本文实例为大家分享了python如何实现视频转代码视频的具体代码,供大家参考,具体内容如下# -*- coding:utf-8 -*-#co
- 下面是代码,如果看不懂,建议先把表格的一些<tr><td>的表格原理弄清楚了,就可以了代码如下:<table&
- 一、argparse简介argparse 是 python 自带的命令行参数解析包,可以用来方便的服务命令行参数,使用之前需要先导入包 im
- 1.下载Linux对应的RPM包http://dev.mysql.com/downloads/mysql/5.6.htmlwget http
- 我的风格,废话不多说了,直接给大家贴代码了,并在一些难点上给大家附了注释,具体代码如下所示:#!/usr/bin/env python#-*
- 一、概述在一般的sql操作中,sql语句基本上都是固定的,如: SELECT t.empno,t.ename FROM scott
- PDOStatement::errorCodePDOStatement::errorCode — 获取跟上一次语句句柄操作相关的 SQLST