图片批量缩略图组件(dll),支持asp,asp.net,vb,vb.net等调用

NSPic是一款基于VB.NET编写的图片处理组件,支持高质量缩略图生成、水印添加等功能,并可在多种环境中调用。组件特点包括快速处理速度、支持多种格式及高质量输出。

下载地址:http://www.nspic.com/mogosoft/nspic.rar

一、声明:
本组件基于vb.net编写,可以在xp,2000,2003机器下注册使用,vb6.0,asp,asp.net,vb.net,c#,pb都调用成功。
本组件的类的方法和函数都很少,但会慢慢增加。
本组件是本人应朋友之约而临时定制的,有许多不足之处,希望大家可以提出来,以便更新,谢谢。
本组件可以随意传播,想咱整就咱整。最近忙不过来,所以就草草写下这些东西。

二、缩略图特点:

1、可以生成单个图片的高质量缩略图
2、可以按宽、高、裁剪的方式进行缩略
3、可以批量对一个目录(含子目录)进行遍历并生成缩略图
4、缩略图目录可以在原文件名上重命名,也可以生成子目录(文件名与原文件名一致)
5、质量可调节,同等体积图片比aspjpeg要清晰得多
6、生成图片速度快,在xp(amd3800+,3G内存),asp+iis环境下测试正常速度16ms/张图片

三、水印特点:

1、可以用图片或者文字打水印
2、打水印时可以控制水印的9种位置,并可以微调
3、图片打水印时可用png,jpg,gif等作为水印
4、解决多数水印组件用png或者其它有透明度图片打水印时锯齿严重的问题
5、最终生成的图片质量可调节
6、用文字打水印时,可以设置字体、大小、颜色、阴影色、样式等
7、可以调整水印的方向

四、其它功能

1、旋转图片功能
2、批量水印,灰度、滤镜、亮度调节...有待开发,欢迎提意见

五、安装:

1,点击“安装.bat”,注册组件
2,如果需要删除就点“卸载.bat”


六、调用说明

(一)、缩略图 nspic.resize

函数:

1,查询目录下图片数量(整型),可以用于校验生成的图片数量与原数量是否一致
getimgcount(a,b)
a为字符型,要查询的目录名称
b为字符型,默认值为"*.*",查询所有后缀名的文件,可以指定“*.jpg”


2,获取单个文件的缩略图,将返回生成的缩略图的路径(字符型)
getsinglepic(loadpath, outpath , outfilename , w , h , mode , q)

loadpath:字符型,图片源,如"/tree/a.jpg"
outpath:字符型,输出目录,如"/newTree/"
outfilename:字符型,输出文件名称如"s_a.jpg"
w:宽度,整型
h:高度,整型
mode:字符型,缩放模式,值有"宽","高","裁剪"三项,选择宽度时,高度自动缩放,反之亦然,具体自己体验一下。
q:整型,质量,1-100的整数,65-75左右就和aspjpeg的最高质量差不多了,90左右是体积和质量都比较理想的点


3,获取目录下所有图片(含子目录)的缩略图,返回成功的记录数(整型)
getmorepic(spath, op, outsmode, w , h, mode , q , ext )

spath:字符型,图片源,如"/tree/"
op:字符型,预留,"op"
outsmode:布尔型,生成模式,为true时,在图片所在目录下生成s_w100这样的目录,在此目录里文件名与源文件名一致
为false时,在图片所在目录下生成s_w100.jpg此样式的文件,就是将源文件名前加上s_
w:宽度,整型
h:高度,整型
mode:字符型,比例缩放模式,值有"宽","高","裁剪"三项,选择宽度时,高度自动缩放,反之亦然,具体自己体验一下。
q:整型,质量,1-100的整数,65-75左右就和aspjpeg的最高质量差不多了,90左右是体积和质量都比较理想的点
ext:字符型,格式为"*.*",如果不限制,将对jpg,png,gif,bmp四种类型的图片进行处理

(二)、水印 nspic.watermark

1、在原图上打图片水印,返回生成的图片路径(字符型)
ImageSign(imgfrom,outfile,WMFile,WMPos,q,tscy,mx,my)

imgfrom:字符型,为源图片路径"c:\a.jpg"
outfile:字符型,为输出的图片路径,如"c:\c.jpg"
WMFile:字符型,为要用来做水印的图片,如"c:\b.png",建议用png打,效果好极了
WMPos:整型,为水印的位置,0=不使用 1=左上 2=中上 3=右上 4=左中 5=正中 6=右中 7=左下 8=中下 9=右下
q:整型,为最最终生成图片质量,0-100
tscy:整型,为水印的透明度,0-10
mx:整型,为水印图片x坐标偏移,支持负数
my:整型,为水印图片y坐标偏移,支持负数

2、在原图上打文字水印,返回生成的图片路径(字符型)
TextSign(imgfrom,outfile,wmText,WMPos,q,tscy,mx,my,fontfamily,fontsize,style,fcolor,bcolor)

imgfrom:字符型,为源图片路径,如"c:\a.jpg"
outfile:字符型,为输出的图片路径,如"c:\a.jpg"
wmText:字符型,为水印文字,如"nspic.com"
WMPos:整型,为水印的位置,0=不使用 1=左上 2=中上 3=右上 4=左中 5=正中 6=右中 7=左下 8=中下 9=右下
q:整型,为最最终生成图片质量,0-100的整数
tscy:整型,为水印的透明度,0-255间的整数
mx:整型,为水印图片x坐标偏移,支持负数
my:整型,为水印图片y坐标偏移,支持负数
style:整型,0=正常 1=加粗 2=倾斜 3=下划线 4=中划线
fcolor:字符型,字体颜色,标准的网页颜色,如"#FFFFFF"
bcolor:字符型,字体阴影颜色,标准的网页颜色,如"#000000"

VB 做的相册(缩略图预览程序) VB做的小型相册,实际上是一个图片浏览程序,打开时显示缩略图,鼠标点击显示大图片,并可接着浏览下去,程序相关说明:   函数功能: 该函数将指定位图的位拷贝到缓冲区里?   函数原型:LONG GetBitmapBits(HBITMAP hbmp, LONG cbBuffer, LPVOID lpvBits);   参数:   hbmp:指向感兴趣的位图的句柄?   cbBuffer:指定要从位图拷贝到缓冲区的字节数?   lpvBits:指向接收位图位数据的缓冲区指针?这些位是按字节类型存储在数组中的?   返回值:如果该函数执行成功,那么返回值就是拷贝到缓冲区的字节数;如果该函数执行失败,那么返回值为0。   Declare Function GetBitmapBits Lib "gdi32" (ByVal hBitmap As Long, ByVal nwCount As Long, lpBits As Any) As Long      函数功能:该函数将位图的颜色数据位设置成指定值?   函数原型:LONG SetBitmapBits(HBITMAP hmbp, DWORD cBytes, CONST VOID (lpBits);   参数:   hbmp:指向要设置的位图的句柄?   cBytes:指定参数lpBits指向的数组的字节数?   lpBits:指向字节类型数组的指针?该数组中包含了指定位图的颜色数据?   返回值:如果该函数执行成功,则返回值就是在设置位图位时使用的字节数;如果失败,则返回值为0。      函数功能:该函数得到指定图形对象的信息,根据图形对象,函数把填满的或结构,或表项(用于逻辑调色板)数目放入一个指定的缓冲区。   函数原型:int GetObject(HGDIOBJ hgdiobj, int cbBuffer, LPVOID lpvObject);   参数:   hgdiobj:指向感兴趣的图形对象的句柄,它可以是这样的一个句柄:一个逻辑位图、一个刷子、一种字体、一个调色板、笔或通过调用CreateDIBsection函数创建的与设备无关位图。   cbBuffer:指定将要写到缓冲区的信息的字节数目?‘lpvObject:指向一个缓冲区的指针,该缓冲区将要检索指定图形对象的信息。      函数功能描述:将一块内存的数据从一个位置复制到另一个位置   函数原型:VOID CopyMemory(PVOID Destination,CONST VOID *Source,DWORD Length);   参数:   Destination:要复制内存块的目的地址?   Source:要复制内存块的源地址?   Length:指定要复制内存块的大小,单位为字节   返回值:该函数为VOID型,没有返回值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值