一、VBS图片处理之用VBS缩放图片大小 用到WIA中的Scale滤镜 Dim Img 'As ImageFile Dim IP 'As ImageProcess Set Img = CreateObject("WIA.ImageFile") Set IP = CreateObject("WIA.ImageProcess") Img.LoadFile "test.jpg" IP.Filters.Add IP.FilterInfos("Scale").FilterID IP.Filters(1).Properties("MaximumWidth") = 100 IP.Filters(1).Properties("MaximumHeight") = 100 Set Img = IP.Apply(Img) Img.SaveFile "test.jpg" 二、VBS图片处理之用VBS转化图片格式 我们常常需要转化图片的格式,虽然用Windows自带的画图工具就可以实现,但是如果有大量的图片需要转化的时候呢?那就是WIA的Convert滤镜(Filter)大显身手的时候了。 Const wiaFormatBMP = "{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}" Const wiaFormatPNG = "{B96B3CAF-0728-11D3-9D7B-0000F81EF32E}" Const wiaFormatGIF = "{B96B3CB0-0728-11D3-9D7B-0000F81EF32E}" Const wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}" Const wiaFormatTIFF = "{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}" Set Img = CreateObject("WIA.ImageFile") Set IP = CreateObject("WIA.ImageProcess") Img.LoadFile "test.bmp" IP.Filters.Add IP.FilterInfos("Convert").FilterID IP.Filters(1).Properties("FormatID").Value = wiaFormatJPEG Set Img = IP.Apply(Img) Img.SaveFile "test.jpg" 三、VBS中也有Vector 对,你没看错,是VBS中的Vector,不是C++,也不是Java。 下面的示例演示了如何创建一个Vector对象并初始化为包含ASCII字符串"This is a test"的字节型Vector。 Dim v 'As Vector Dim i 'As Integer Set v = CreateObject("WIA.Vector") v.SetFromString "This is a test", True, False For i = 1 To v.Count MsgBox Chr(v(i)) Next Vector更强大的地方在于可以用来创建图片,让我想到了PHP的GD库拓展,只可惜功能太简单了。 Set v = CreateObject("WIA.Vector") For i = 1 To 200 * 200 v.Add &HFF0000FF Next Set Img = v.ImageFile(200,200) Img.SaveFile "Blue." & Img.FileExtension Vector中的一个元素代表一个像素点,示例中的Vector对象有200*200个元素(像素点),每个像素的ARGB值都是FF0000FF(完全不透明的蓝色)。如果你足够强大,你完全可以用Vector来画一幅蒙娜丽莎。 四、用VBS获取图片分辨率 Windows Image Acquisition (WIA)是个好东西。虽然很久很久以前就知道有这么个东西,但是其时英语很烂,VBS更烂,就没有仔细研究。最近闲来没事,看了一下相关的文档,发现WIA没有想象中的强大,真失望。 Set Img = CreateObject("WIA.ImageFile") Img.LoadFile "test.jpg" WScript.Echo "Width = " & Img.Width WScript.Echo "Height = " & Img.Height |
|关于我们|违规用户|手机版|计算机知识网 ( 豫ICP备15021710号 ) IP: 18.191.103.228 |
计算机知识网上的所有内容均来自于网络和网友,并不代表本站立场。如有侵权,请联系QQ:1078292299我们会尽快删除。 |
声明:严禁任何人以任何形式在本站发表与中华人民共和国法律相抵触的言论! |
GMT+8, 2024-12-21 23:44 |