js等比压缩图片代码

js等比压缩图片代码
在显示图片的时候,由于我们上传的图片大小不一,会导致页面变乱,
直接在页面上规定图片长和宽,看到的图片会变形。可以用javascript
实现等比压缩图片。
放入head里面 
<script  language="JavaScript"> 
<!-- 
var  flag=false; 
function  DrawImage(ImgD){ 
     var  image=new  Image(); 
     image.src=ImgD.src; 
     if(image.width>0  &&  image.height>0){ 
       flag=true; 
       if(image.width/image.height>=  164/112){ 
         if(image.width>164){     
         ImgD.width=164; 
         ImgD.height=(image.height*164)/image.width; 
         }else{ 
         ImgD.width=image.width;     
         ImgD.height=image.height; 
         } 
         ImgD.alt=image.width+"×"+image.height; 
         } 
       else{ 
         if(image.height>112){     
         ImgD.height=112; 
         ImgD.width=(image.width*112)/image.height;           
         }else{ 
         ImgD.width=image.width;     
         ImgD.height=image.height; 
         } 
         ImgD.alt=image.width+"×"+image.height; 
         } 
       } 
}   
//--> 
</script> 

图片调用 
<a  href="http://www.sina.com.cn"  target="_blank">
<img  src="http://i3.sinaimg.cn/ty/k/
2007-11-18/U2136P6T12D3302307F44DT20071118133843.jpg"
border="0"  width="164"  height="112" 
onload="javascript:DrawImage(this);"></a> 

这样可以实现等比例缩放!但是这样的压缩的效果并不能改变
图片的真实大小,只是显示出来大小变化了,最好的方法是使
用aspjpeg组件来压缩,来生成小的图片。

转载:http://www.bcbbs.net/news/Content1547.aspx

你可能感兴趣的:(js)