ASP固定比例裁剪缩略图的方法(asp怎么设置)这都可以?

随心笔谈3年前发布 admin
211 0 0

文章摘要

本文介绍了一个名为`MakePic`的函数,用于对图片进行缩放和保存。函数接受源图片路径及目标宽度和高度,并根据源图片的宽高比动态调整裁剪方式: 1. 如果源图片宽高比大于目标比例,会保留左右部分并裁剪顶部和底部; 2. 如果源图片宽高比小于目标比例,会保留顶部和底部并裁剪左右部分; 3. 处理过程中会检查`ASPJpeg`组件是否安装,若未安装将提示错误并结束程序; 4. 缩放过程中保持图片等比,若无法完全适应目标尺寸则进行裁剪; 5. 缩放和裁剪完成后将图片保存到目标路径,并返回布尔值指示是否成功。 该函数通过动态计算裁剪区域,确保图片在目标尺寸下保持最佳比例。


Function MakePic(sourcpic,newwidth,newheight,destpic)
On error resume next
MakePic=false
Set Jpeg=Server.CreateObject(“Persits.Jpeg”)
if Err then
response.Write (“错误:空间没安装aspjpeg组件”)
response.end
end if
Jpeg.Quality=100
Jpeg.Open sourcpic
jpeg.PreserveAspectRatio=True ‘等比缩放
if jpeg.OriginalWidth/jpeg.OriginalHeight > newwidth/newheight then’太扁了,要剪掉左右部分
jpeg.Height=newheight
jpeg.crop CInt((jpeg.Width – newwidth)/2),0,CInt((jpeg.Width – newwidth)/2)+newwidth,newheight
else ‘太高了,要剪掉上下部分
jpeg.Width=newwidth
jpeg.crop 0,CInt((jpeg.Height – newheight)/2),newwidth,CInt((jpeg.Height – newheight)/2)+newheight
end if
Jpeg.Save destpic
if err.number=0 then MakePic=True
Jpeg.Close
Set Jpeg=Nothing
End function

© 版权声明

相关文章