采集水印,缩略图实现,参考代码! 还没有写好,先把参考给大家一起学习吧! 获取图片大小信息 <% set obj=server.CreateObject("wsImage.Resize") obj.LoadSoucePic server.mappath("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.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 %> 原图25.jpg 宽:400 高:298 大小:77K 产生的缩略图25_s.jpg 宽:200 高:149 大小:6K
说明: 产生缩略图共有四种导出方式: (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,则对原图进行放大。 从上面四种产生缩略图的方式可以看出最后一个参数为第几种输出形式。 •裁减图片 <% set obj=server.CreateObject("wsImage.Resize") obj.LoadSoucePic server.mappath("25.jpg") obj.Quality=75 obj.cropImage server.mappath("25_crop.jpg"),74,72,242,246 strError=obj.errorinfo if strError<>"" then response.write obj.errorinfo end if obj.free set obj=nothing %> 原图宽:400 高:334 大小:99.3K 产生的裁减图宽:242 高:246 大小:55K
说明: cropImage方法中参数74表示开始裁减的起点离原图左边的距离,72表示开始裁减的起点离原图顶边的距离,后两个参数表示要裁减的宽度和高度。 添加文字水印 <% set obj=server.CreateObject("wsImage.Resize") obj.LoadSoucePic server.mappath("25.jpg") obj.Quality=75 obj.TxtMarkFont = "黑体" obj.TxtMarkBond = false obj.MarkRotate = 25 obj.TxtMarkHeight = 25 obj.AddTxtMark server.mappath("txtMark.jpg"), "www.wave12.com", &H00FF00&, 10, 70 strError=obj.errorinfo if strError<>"" then response.write obj.errorinfo end if obj.free set obj=nothing %> 产生的文字水印图txtMark.jpg 大小:7K
说明: LoadSoucePic 装载源图 obj.TxtMarkFont 设置水印文字字体 obj.TxtMarkBond 设置水印文字的粗细 obj.MarkRotate = 25 水引文字的旋转角度 obj.TxtMarkHeight = 25 水引文字的高度 obj.AddTxtMark方法中,参数&H00FF00&为水印文字的颜色代码,&H表示十六进制, 10,70为输出文字相对于图片左上角的坐标位置 添加图片水印 <% 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, 20,&hFFFFFF, 70 strError=obj.errorinfo if strError<>"" then response.write obj.errorinfo end if obj.free set obj=nothing %> 产生的图片水印图imgMark.jpg 大小:7K水印图片blend.bmp 大小10.9K
说明: obj.LoadSoucePic 装载源图 obj.LoadImgMarkPic 装载水印图片 obj.AddImgMark 315, 20为水印图片在源图的坐标位置(相对于左上角) ,参数70为不透明度。
|