首页 > 编程 > ASP > 正文

ASP固定比例裁剪缩略图的方法

2024-05-04 11:10:10
字体:
来源:转载
供稿:网友
这篇文章主要介绍了ASP固定比例裁剪缩略图的方法,需要的朋友可以参考下
 

一般生成缩略图的方法有两种:

第一种:缩放成固定大小的小图片

第二种:缩放成等比例的小图片

第一种方法的缺点是,会使图片变形,例如一个身材苗条的MM变成一个胖MM

第二种方法的缺点是,如果图片是放在一个表格中显示,并且图片宽高比和这个表格不同,就不能充满整个表格,留下空隙,不好看

这里介绍的方法是“固定比例裁剪”,使用aspjpeg组件,也就是说,生成的缩略图宽高比是固定的,但是不会变形。如果原图的宽高比大于设定的宽高比,就会自动剪掉左右两旁多余的图;如果原图的宽高比小于设定的宽高比,就会自动剪掉上下的多余的图。
 

  1. Function MakePic(sourcpic,newwidth,newheight,destpic)  
  2. On error resume next  
  3. MakePic=false  
  4. Set Jpeg = Server.CreateObject(“Persits.Jpeg”)  
  5. if Err then  
  6. response.Write (“错误:空间没安装aspjpeg组件”)  
  7. response.end  
  8. end if  
  9. Jpeg.Quality = 100  
  10. Jpeg.Open sourcpic  
  11. jpeg.PreserveAspectRatio = True ‘等比缩放  
  12. if jpeg.OriginalWidth/jpeg.OriginalHeight > newwidth/newheight then'太扁了,要剪掉左右部分  
  13. jpeg.Height = newheight  
  14. jpeg.crop CInt((jpeg.Width – newwidth)/2),0,CInt((jpeg.Width – newwidth)/2)+newwidth,newheight  
  15. else ‘太高了,要剪掉上下部分  
  16. jpeg.Width = newwidth  
  17. jpeg.crop 0,CInt((jpeg.Height – newheight)/2),newwidth,CInt((jpeg.Height – newheight)/2)+newheight  
  18. end if  
  19. Jpeg.Save destpic  
  20. if err.number=0 then MakePic=True 
  21. Jpeg.Close  
  22. Set Jpeg=Nothing 
  23. End function 
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表