使用asp(vbscript)查找裁剪图像的图像大小。

时间:2012-09-24 13:03:01

标签: asp-classic vbscript

我写了一个基本的裁剪脚本。在VBscript中。如下:

<%Set Jpeg = Server.CreateObject("Persits.Jpeg")
getsec = DateDiff("s","01/01/04",now())
filename = "screenshots/"&getsec&".png"
imgfile = request("imgfile")
Jpeg.Open Server.MapPath(imgfile)
Jpeg.Crop 0, 38, 320, 460
Jpeg.Canvas.DrawPNG 0, 0,  Server.MapPath("watermark.png")
Jpeg.PNGOutput = True
Jpeg.Save Server.MapPath(filename)
%>
<%=filename%>

然而,不是硬编码这些变量:

Jpeg.Crop 0, 38, 320, 460

我希望在裁剪之前使用vbscript找出图像大小,这样如果上传不同的图像大小,脚本可以更灵活。有谁知道怎么做?

2 个答案:

答案 0 :(得分:2)

您的Jpeg对象(ASPJpeg实例)具有.OriginalWidth.OriginalHeight属性,可在调用.Open方法后访问这些属性。你可以使用它们。

答案 1 :(得分:1)

一种选择是使用loadpicture功能。 (另见http://www.w3schools.com/vbscript/func_loadpicture.asp

要获取像素,您可以使用:

Dim sPath
sPath = "C:\myPicture.jpg"
dim iWidth, iHeight
dim oFs, oImg
Set oFs= CreateObject("Scripting.FileSystemObject")
Set oImg = loadpicture(sPath)
iWidth = round(oImg.width / 26.4583)
iHeight = round(oImg.height / 26.4583)
Set oImg = Nothing