我写了一个基本的裁剪脚本。在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找出图像大小,这样如果上传不同的图像大小,脚本可以更灵活。有谁知道怎么做?
答案 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