程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP使用aspjpeg固定比例裁剪縮略圖

ASP使用aspjpeg固定比例裁剪縮略圖

日期:2017/1/9 13:40:08      編輯:關於ASP編程

       一般生成縮略圖的方法有兩種:

      一是縮放成固定大小的小圖片

      二是縮放成等比例的小圖片

      第一種方法的缺點是,會使圖片變形,例如一個身材苗條的MM變成一個胖MM

      第二種方法的缺點是,如果圖片是放在一個表格中顯示,並且圖片寬高比和這個表格不同,就不能充滿整個表格,留下空隙,不好看

      這裡介紹的方法是“固定比例裁剪”,也就是說,生成的縮略圖寬高比是固定的,但是不會變形。如果原圖的寬高比大於設定的寬高比,就會自動剪掉左右兩旁多余的圖;如果原圖的寬高比小於設定的寬高比,就會自動剪掉上下的多余的圖。

      Copy to ClipboardLiehuo.Net Codes

      引用的內容:[www.veryhuo.com]

      ‘===============================================

      ‘生成新規格大小的圖片

      ‘失敗返回False,成功返回True

      ‘sourcpic-源圖片絕對路徑,newwidth-新圖片寬,newheight-新圖片高,destpic-目標圖片絕對路徑

      ‘===============================================

      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

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved