在网站前台产品展示时,一般用缩略图,点击进入然后看到大图。 缩略图带来了两个烦劳: 1.如果后台只传一张大图,显示缩略图时只是将大图固定宽度和高度,这样不但造成缩略图变形,而且使得页面访问速度缓慢。 2.如果后台每次上传时,都上传两张图片,一张大图,一张缩略图。这样的话,没有1中的问题,但是给后台人员造成很大麻烦。因为后台人员并不一定知道处理生成缩略图;即使知道并能快速处理,也浪费掉一些时间。
下面的代码可以帮您用AspJpeg组件,按宽高比例,真正生成缩略图 AspJpeg组件下载:http://www.aspjpeg.com/download.html AspJpeg组件使用:http://www.mydw.cn/tech/1/766.html 注册码:48958-77556-02411
<% Dim sOriginalPath sOriginalPath = "images/1.gif" '原图片路径一般上传完毕后获取,或者从数据库获取
Dim sReturnInfo, sSmallPath '函数返回信息, 缩略图路径 sReturnInfo = BuildSmallPic(sOriginalPath, "images", 100, 100)
Response.Write "返回信息:" & sReturnInfo & "<br/>" If InStr(sReturnInfo, "Error_") <= 0 Then sSmallPath = sReturnInfo '返回信息就是 '将sSmallPath写入数据库 ' Else Response.Write "详细错误:" Select Case sReturnInfo Case "Error_01" Response.Write "<font color='red'>创建AspJpeg组件失败,没有正确安装注册该组件</font>" & "<br/>" Case "Error_02" Response.Write "<font color='red'>原图片不存在,检查s_OriginalPath参数传入值</font>" & "<br/>" Case "Error_03" Response.Write "<font color='red'>缩略图存盘失败.可能原因:缩略图保存基地址不存在,检查s_OriginalPath参数传入值;对目录没有写权限;磁盘空间不足</font>" & "<br/>" Case "Error_Other" Response.Write "<font color='red'>未知错误</font>" & "<br/>" End Select Response.End End If
%> 原文件名:<%=sOriginalPath%><br/> 缩略图文件名:<%=sSmallPath%><br/> 原图片:<img src='<%=sOriginalPath%>' border=0><br/><br/> 缩略图:<img src='<%=sSmallPath%>' border=0>
<% '================================================================ 'Author:laifangsong QQ:25313644 '功能:按照指定图片生成缩略图 '注意:以下提到的“路径”都是值相对于调用本函数的文件的相对路径 '参数: ' s_OriginalPath: 原图片路径 例:images/image1.gif ' s_BuildBasePath: 生成图片的基路径,不论是否以“/”结尾均可 例:images或images/ ' n_MaxWidth: 生成图片最大宽度 ' 如果在前台显示的缩略图是 100*100,这里 n_MaxWidth=100,n_MaxHeight=100. ' n_MaxHeight: 生成图片最大高度 '返回值: ' 返回生成后的缩略图的路径 '错误处理: ' 如果函数执行过程中出现错误,将返回错误代码,错误代码以 “Error”开头 ' Error_01:创建AspJpeg组件失败,没有正确安装注册该组件 ' Error_02:原图片不存在,检查s_OriginalPath参数传入值 ' Error_03:缩略图存盘失败.可能原因:缩略图保存基地址不存在,检查s_OriginalPath参数传入值;对目录没有写权限;磁盘空间不足 ' Error_Other:未知错误 '调用例子: ' Dim sSmallPath '缩略图路径 ' sSmallPath = BuildSmallPic("images/image1.gif", "images", 100, 100) '================================================================ Function BuildSmallPic(s_OriginalPath, s_BuildBasePath, n_MaxWidth, n_MaxHeight) Err.Clear On Error Resume Next '检查组件是否已经注册 Dim AspJpeg Set AspJpeg = Server.Createobject("Persits.Jpeg") If Err.Number <> 0 Then Err.Clear BuildSmallPic = "Error_01" Exit Function End If
[1] [2] [3] 下一页
|