下载ASPJpeg的bll库,引用

一、为图片添加水印
//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
//打开源图片文件
objJpeg.Open(Server.MapPath("aaa.JPG"));
//添加水印文字
objJpeg.Canvas.Font.Color = 0xFF0000; // 水印字体颜色
objJpeg.Canvas.Font.Family = "Courier New";//水印字体
objJpeg.Canvas.Font.Size = 14;//水印字体大小
objJpeg.Canvas.Font.Bold = 1; // 是否粗体,粗体用:True(1),False(0)
objJpeg.Canvas.Font.Quality = 4; // 品质
objJpeg.Canvas.Font.BkMode = "Opaque"; // 字体背景颜色,这里为透明(Opaque)

objJpeg.Canvas.Print( 10, 10, "Copyright (c) Hdut.Com", Missing.Value );//水印文字,两个数字10为水印的xy座标
objJpeg.Save( Server.MapPath("aaa_water.jpg") );
objJpeg = null;//注销组件,释放资源

===============================================================================================

二、生成缩略图
//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
//打开源图片文件
objJpeg.Open(Server.MapPath("aaa.JPG"));
//对图片进行50%操作
objJpeg.Width = objJpeg.OriginalWidth / 2;
objJpeg.Height = objJpeg.OriginalHeight / 2;
//如果必要进行锐化
objJpeg.Sharpen(1, 130 );
objJpeg.Save(Server.MapPath("aaa_small.jpg"));//生成缩略图位置及名称
objJpeg = null;//注销组件,释放资源

===============================================================================================

三、安全码

安全码的道理和加水印差不多,很多朋友问我要具体的代码技术,在这里我就写出来和大家分享,一般人我还不告诉他。呵呵。
生成安全码的图片。当然你要预先准备一张背景图哦

//得到4位数的验证码
Random rd = new Random();
Session["random_num"] = rd.Netx(1000,9999);
//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
//打开背景图片文件
objJpeg.Open(Server.MapPath("back.JPG"));
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("random_index.jpg")) //保存
<img src="random_index.jpg" border="0" align="absmiddle"> 
自己做做看。呵呵。

===============================================================================================

四、图片切割

一直以来,对aspjpeg不了解的人以为是无法用它来进行切割的。 
其实有这样的一个方法的:crop(x1,y1,x2,y2) 
切割长方型左上角x坐标,y坐标 右下角x坐标 y坐标

//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
//打开图片文件
objJpeg.Open(Server.MapPath("aaa.JPG"));
objJpeg.width=70 
objJpeg.Height = objJpeg.OriginalHeight*70;
objJpeg.crop(0,0,70,52);//开始切割其实是把超过52象素的下部分去掉 
objJpeg.save(server.MapPath("aaa_1.gif"));//保存 
怎么样,很简单吧

===============================================================================================

五、图片合并

我们这里是要把logo图片加到aaa.jpg图片上去 
其实,图片合并的方法也可以用来动态打水印哦

//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
//打开图片文件
objJpeg.Open(Server.MapPath("aaa.JPG"));
//实例化logo组件
ASPJPEGLib.IASPJpeg logo = new ASPJPEGLib.ASPJpeg();
//打开logo图片文件
logo.Open(Server.MapPath("logo.JPG"));
Logo.Width = 70;
Logo.Height = Logo.Width * Logo.OriginalHeight / Logo.OriginalWidth;//重新定义大小
//将logo合并到图片中去
objJpeg.DrawImage(0, 0, Logo);

补充说明:
DrawImage(int x,int y,ASPJPEGLib.ASPJpeg Image,object Opacity,object TranspColor,object Deviation)
x:           横坐标 
y:           纵坐标 
Image:       图片
Opacity:     默认为1,使用透明,可取值为0,1
TranspColor: 透明颜色,十六进制
Deviation:   透明值(0-255),默认为0
===============================================================================================

这里建议使用:objJpeg.Canvas.DrawPNG(x,y,Server.MapPath("/images/hhdut.png"));
这样不仅快些,而且不会出错

六、数据库支持

//实例化组件
ASPJPEGLib.IASPJpeg objJpeg = new ASPJPEGLib.ASPJpeg();
// 打开图片数据源
object obj = eData.GetData("select images from img where id=12");
objJpeg.OpenBinary(obj);
//将图片显示出来
objJpeg.SendBinary( Missing.Value );

objJpeg.SendBinary 这里用了SendBinary的输出方法。当然,你也可以先保存更改后的aaa.jpg,再输入也可以。我个人不大喜欢用SendBinary方法,在网速慢的时候容易出错。在速度方面也不怎样。呵呵。

===============================================================================================

七、更多方法介绍

//画一条直线 
Canvas.Line(Left, Top, Right, Bottom);
//画出一个椭圆 
Canvas.Ellipse(Left, Top, Right, Bottom);
//画出一个圆 
Canvas.Circle(X, Y, Radius); 
//画出一个长方形,上面有代码介绍了
Canvas.Bar(Left, Top, Right, Bottom); 
//文字阴影颜色
Canvas.Font.ShadowColor; 
//阴影X坐标设定
int64 Canvas.Font.ShadowXOffset; 
//Y坐标设定 
int64 Canvas.Font.ShadowYOffset; 
//文字背景 
String Canvas.Font.BkMod

AspJpeg使用 .的更多相关文章

  1. 服务器支持AspJpeg和JMail45_free.msi组件

     解决办法: 1.在服务器上安装上AspJpeg和JMail45_free.msi后, 2.在cmd中输入regsvr32 c:/windows/SysWOW64/aspjpeg.dll 3.把网站对 ...

  2. aspjpeg 组件在asp中的使用

    本来好的系统,你却没有做好迁移等交接工作,所以,要麻烦死自己了-------for 凌杰 首先,该系统为asp系统,需要aspjpeg  支持.... 经过使用和测试.发现有如下小结. 1. 安装时 ...

  3. windows server 2008 r2 x64 enterprise service pack1中aspjpeg.dll安装

    官网地址:http://persits.com/ 64位:http://www.persits.com/aspjpeg64.exe sn:lptn9dQO1enAePAXB2wFaCZawYWzfm0 ...

  4. ASP组件AspJpeg(加水印)生成缩略图等使用方法

    ASP组件AspJpeg(加水印)生成缩略图等使用方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-12-17我要评论 ASPJPEG是一款功能相当强大的图象处理组件,用它可以轻松地做出 ...

  5. AspJpeg2.0组件教程完整版 aspjpeg教程...

    AspJpeg是一款功能强大的基于Microsoft IIS环境的图片处理组件,网络上对其进行详细和深入介绍的中文文章并不多,即使有一般也只是牵涉到图片缩略图和图片水印,这与其为英文版本有着密切的关系 ...

  6. aspjpeg组件在2008R2下“ActiveX 部件不能创建对象”

    64位要用 C:\Windows\SysWow64下的 regist32注册另外 IIS下要设置应用是32位的

  7. aspjpeg 半透明描边的实现函数

    '参数说明 'big 原图路径(相对) 'small 生成图路径(相对) 'width_s 生成后宽度(数值型) 'height_s生成后高度(数值型) 'images/Alpha.jpg 为一个像素 ...

  8. X64操作系统组件Jmail无法正常服务问题

    故障现象: 近日,在VMware虚拟化部署迁移中,之前物理服务器中部署网站ASP组件Jmail服务一切正常,迁移完成后发现Jmail无法正常工作,其余组件能正常工作. 环境:Windows Serve ...

  9. Windows Server 2008R2服务器安装及设置教程

    第一篇:系统安装与设置 前言本安装及设置教程适用于使用Windows2008R2为操作系统的服务器,目的是让服务器实现下列环境.语言脚本环境:ASP.ASP.Net1.1.ASP.Net2.0.ASP ...

随机推荐

  1. java程序员需要掌握些什么知识

    java程序员需要掌握些什么知识 合格的程序员应具有实际开发能力的Java和J2EE.如今的IT企业需求量大,但人才紧缺的.企业需要大量掌握Java/JEE/Oracle/WebLogic/Websp ...

  2. gb2312

    ---恢复内容开始--- 字符集 gb2312(字全)采用2两个字节(一个汉字) utf-8(只有汉字)采用3个字节(一个汉字) html就是负责描述页面的语义:css负责描述页面的样式:js负责描述 ...

  3. mysql 已有数据字符集的修改

    mysql 字符集的修改 可以使用set names utf8 通过修改配置文件 可修改参数 default_character_set=utf8 但是以上修改方法只对数据库中新增的记录生效,如果数据 ...

  4. PriorityQueue优先队列用法入门

    PriorityQueue是队列的一种,它叫做优先队列,该类实现了Queue接口. 之所以叫做优先队列,是因为PriorityQueue实现了Comparator这个比较接口,也就是PriorityQ ...

  5. 高可用Hadoop平台-Flume NG实战图解篇

    1.概述 今天补充一篇关于Flume的博客,前面在讲解高可用的Hadoop平台的时候遗漏了这篇,本篇博客为大家讲述以下内容: Flume NG简述 单点Flume NG搭建.运行 高可用Flume N ...

  6. WPF的二维绘图(二)——几何图形Geometry

    在WPF的DrawingContext对象中,提供了基本的绘制椭圆和矩形的API:DrawEllipse和DrawRectangle.但是,这些是远远不够用的,我们在日常应用中,更多的是使用DrawG ...

  7. Net accounts命令

    Net accounts 将用户帐户数据库升级并修改所有帐户的密码和登录请求. 语法 net accounts [/forcelogoff:{minutes | no}] [/minpwlen:len ...

  8. Sort命令使用

    查看haproxy日志的某一时间段的关于某个url的访问IP降序排序:           注意:排序(sort)在去重(uniq)之后使用 p 指的是从包含某一个字符到某一字符的区间的所有行打印输出 ...

  9. ubuntu使用 服务

    在这里写了很多篇linux,习惯了在这里写 centos中定时任务命令是crond ubuntu中定时任务命令是cron 这两种linux系统不一样的地方还是挺多的, 既然我目前的专注点是ubuntu ...

  10. 如何在Flex标签中写事件函数

    在事件变量值中直接写函数语句,如果是多条语句,则用";"号隔开. 示例如下: <mx:Box id="label" backgroundColor=&qu ...