如何用ASP把从后台加入的图片在首页显示出缩略图效果呢?
我想把网站的产品都弄成缩略图形式……因为有的产品图片是长的,有的是宽的,传上就不好看了……希望大家教我~我对ASP不是很明白。有人说用Persits.Jpeg,但是我不会...
我想把网站的产品都弄成缩略图形式……因为有的产品图片是长的,有的是宽的,传上就不好看了……
希望大家教我~我对ASP不是很明白。有人说用Persits.Jpeg,但是我不会用。
这是我网站首页源代码,希望大家帮我~谢谢了~
代码是<%
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" width="170" height="120" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
我的意思:我希望无论正方形还是长方形的图片都能像电脑本机的缩略图似的……不会失真和变性……还是谢谢大家 展开
希望大家教我~我对ASP不是很明白。有人说用Persits.Jpeg,但是我不会用。
这是我网站首页源代码,希望大家帮我~谢谢了~
代码是<%
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" width="170" height="120" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
我的意思:我希望无论正方形还是长方形的图片都能像电脑本机的缩略图似的……不会失真和变性……还是谢谢大家 展开
5个回答
展开全部
<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>= 170/120){
if(image.width>170){
ImgD.width=170;
ImgD.height=(image.height*170)/image.width;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+"x"+image.height;
}
else{
if(image.height>120){
ImgD.height=120;
ImgD.width=(image.width*120)/image.height;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+"x"+image.height;
}
}
}
//-->
</script>
<%
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" onload="javascript:DrawImage(this);" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
<!--
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>= 170/120){
if(image.width>170){
ImgD.width=170;
ImgD.height=(image.height*170)/image.width;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+"x"+image.height;
}
else{
if(image.height>120){
ImgD.height=120;
ImgD.width=(image.width*120)/image.height;
}else{
ImgD.width=image.width;
ImgD.height=image.height;
}
ImgD.alt=image.width+"x"+image.height;
}
}
}
//-->
</script>
<%
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" onload="javascript:DrawImage(this);" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
展开全部
<%
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" width="50" height="50" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
帮你改小了!你看看吧!不行给我留言吧!
--》补充:
你需要改成同样的显示是吧!只要改小了什么图片都是那么大了!就符合你的要求了!
set rs_news=server.createobject("adodb.recordset")
sqltext4="select top 4 * from news where bigclassname='科技消息' and firstimagename <>'' order by id desc"
rs_news.open sqltext4,conn,1,1
%>
</p>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="70"><div align="center"><a href="shownews.asp?id=<%=rs_news("id")%>" target="_blank"><img src="uploadfiles/<%= rs_news("firstimagename") %>" width="50" height="50" border=0></a></div></td>
</tr>
</table>
<% rs_news.close %>
帮你改小了!你看看吧!不行给我留言吧!
--》补充:
你需要改成同样的显示是吧!只要改小了什么图片都是那么大了!就符合你的要求了!
参考资料: ASP
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用 onload='javascript:if(this.width>84)this.width=84;if(this.height>84)this.height=84;' 即可以实现。
代码:
<img src="uploadfiles/<%= rs_news("firstimagename") %>" onload='javascript:if(this.width>120)this.width=120;if(this.height>70)this.height=70;' border=0>
代码:
<img src="uploadfiles/<%= rs_news("firstimagename") %>" onload='javascript:if(this.width>120)this.width=120;if(this.height>70)this.height=70;' border=0>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
后台上传图片的时候获取图片的宽和高,然后存进数据库,然后在前台显示缩略图的时候从数据库读取原始的宽和高,然后进行比例计算, 计算出你想要的比例,缩略图的大小就很容易算出来啦~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将图片格式(大小)设置成与JSP页面上的图片显示框的大小一致旧应该OK了吧~?同时注意下分辨率问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询