用AspJpeg组件,按宽高比例,真正生成缩略图

 

网站前台产品展示时,一般用缩略图,点击进入然后看到大图。
缩略图带来了两个烦劳:
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

    "检查原图片是否存在
    Dim s_MapOriginalPath
    s_MapOriginalPath = Server.MapPath(s_OriginalPath)
    AspJpeg.Open s_MapOriginalPath "打开原图片
    If Err.Number <> 0 Then
        Err.Clear
        BuildSmallPic = "Error_02"
        Exit Function
    End If 数据挖掘研究院

    "按比例取得缩略图宽度和高度
    Dim n_OriginalWidth, n_OriginalHeight "原图片宽度、高度
    Dim n_BuildWidth, n_BuildHeight "缩略图宽度、高度
    Dim div1, div2
    Dim n1, n2
    n_OriginalWidth = AspJpeg.Width
    n_OriginalHeight = AspJpeg.Height
    div1 = n_OriginalWidth / n_OriginalHeight
    div2 = n_OriginalHeight / n_OriginalWidth
    n1 = 0
    n2 = 0
    If n_OriginalWidth > n_MaxWidth Then
        n1 = n_OriginalWidth / n_MaxWidth
    Else
        n_BuildWidth = n_OriginalWidth
    End If
    If n_OriginalHeight > n_MaxHeight Then
        n2 = n_OriginalHeight / n_MaxHeight 数据挖掘交友
    Else
        n_BuildHeight = n_OriginalHeight
    End If
    If n1 <> 0 Or n2 <> 0 Then
        If n1 > n2 Then
            n_BuildWidth = n_MaxWidth
            n_BuildHeight = n_MaxWidth * div2
        Else
            n_BuildWidth = n_MaxHeight * div1
            n_BuildHeight = n_MaxHeight
        End If
    End If 数据挖掘研究院

    "指定宽度和高度生成
    AspJpeg.Width = n_BuildWidth
    AspJpeg.Height = n_BuildHeight
   
    "--将缩略图存盘开始--
    Dim pos, s_OriginalFileName, s_OriginalFileExt "位置、原文件名、原文件扩展名
    pos = InStrRev(s_OriginalPath, "/") + 1
    s_OriginalFileName = Mid(s_OriginalPath, pos)
    pos = InStrRev(s_OriginalFileName, ".")
    s_OriginalFileExt = Mid(s_OriginalFileName, pos)

数据挖掘交友

    Dim s_MapBuildBasePath, s_MapBuildPath, s_BuildFileName "缩略图绝对路径、缩略图文件名
    Dim s_EndFlag "小图片文件名结尾标识 例: 如果大图片文件名是“image1.gif”,结尾标识是“_small”,那么小图片文件名就是“image1_small.gif”
    If Right(s_BuildBasePath, 1) <> "/" Then s_BuildBasePath = s_BuildBasePath & "/"
    s_MapBuildBasePath = Server.MapPath(s_BuildBasePath)
    s_EndFlag = "_small" "可以自定义,只要能区别大小图片即可
    s_BuildFileName = Replace(s_OriginalFileName, s_OriginalFileExt, "") & s_EndFlag & s_OriginalFileExt
    s_MapBuildPath = s_MapBuildBasePath & "" & s_BuildFileName
   
    AspJpeg.Save s_MapBuildPath "保存
    If Err.Number <> 0 Then
        Err.Clear

数据挖掘论坛


        BuildSmallPic = "Error_03"
        Exit Function
    End If
    "--将缩略图存盘结束-- 数据挖掘研究院

    "注销实例
    Set AspJpeg = Nothing
    If Err.Number <> 0 Then
        BuildSmallPic = "Error_Other"
        Err.Clear
    End If
    BuildSmallPic = s_BuildBasePath & s_BuildFileName
End Function 数据挖掘工具

%> 数据挖掘研究院

[数据挖掘专家] [数据挖掘研究院] [数据挖掘论坛] [数据挖掘实验室]
上一篇:推荐:ASP初学者常用源代码总结篇
下一篇:正则表达式的字符,定位字符和重复字符
最新评论共有 0 位网友发表了评论 , 查看所有评论
发表评论( 不能超过250字,需审核,请自觉遵守互联网相关政策法规。 )
匿名?
数据挖掘网站导航 数据挖掘论坛导航
  • 数据挖掘工具
  • 数据挖掘论坛
  • DataCruncher - Cognos
  • MineSet - MathSoft
  • Intelligent Miner - GainSmarts
  • Sqlserver - SAS - Clementine
  • CART - Weka - WizSoft
  • NeuroShell - ModelQuest
  • data mining tools - Darwin
  • 数据挖掘交友
  • 数据挖掘博客
  • 数据挖掘工具
  • 数据挖掘资源
  • 数据挖掘技术算法
  • 数据挖掘相关期刊、会议
  • 研究院联盟合作专区
  • 数据挖掘基础与相关技术
  • 数据挖掘厂商与就业
  • 数据挖掘研究者乐园
  • 知名厂商数据挖掘工具资料
  • 国内数据挖掘实验室
  • Foreign Data Mining Lab
  • 热点关注
  • MDAC2.8下载!
  • 软件架构的十大错误
  • 没啥好东西了,贴一段我现在在用的产生随机
  • ASP+JS处理复杂表单的生成与验证
  • 无法加载DLL(OCI.DLL),如何解决?
  • 学习ASP有用的代码(很有用哦!)
  • 动态web开发语言项目 驳“ASP低能论”
  • 郁闷的System.Web.Mail
  • 利用ASP远程注册DLL的方法
  • 改进的ASP备份SQLServer数据库
  • 论坛最新话题
  • Foundations of Statistical Natural Langu
  • Game Theory meet Data Mining: A Recent P
  • System Building: How does it help or hin
  • 数据挖掘与Clementine培训
  • 新手报到
  • 求 SASEM 客户流失预测分析
  • 数据挖掘工程师/搜索研究院—北京——无线
  • 数据挖掘入门介绍(如何着手数据挖掘)
  • Information Overload Survey Results
  • The INEX 2005 Workshop on Element Retrie
  • 相关资讯
  • 软件架构的十大错误
  • JavaScript基础教程第四课
  • 改进的ASP备份SQLServer数据库
  • MVC构架实现之ASP
  • .net入门一些常见的东西
  • VisualStudio.NET2003不能调试ASP.Net程序
  • X.U.S.T原创:自己搭建IIS找ASP程序漏洞
  • 郁闷的System.Web.Mail
  • ASP错误代码总结
  • 从XML中读取数据!(Asp.net学习一)
  • 数据挖掘实验室资料
  • 数据挖掘博客地址
  • 数据挖掘实验室网站地址
  • Prepare for Medicare audits by using dat
  • 注册成为SAS用户与爱好者俱乐部会员
  • 水南梅
  • 明日烟
  • 新人报道
  • 下载
  • 厦门服务器托管,450元/月—0592-5177319 高
  • 买空间送域名--0592-5177319 高静