仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1806|回复: 18
打印 上一主题 下一主题

[学习教程] ASP网页设计用AspJpeg组件,按宽高比例,真正生成缩...

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:31:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。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 = WordStr(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
%>
只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天
深爱那片海 该用户已被删除
沙发
发表于 2015-2-4 00:47:14 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
兰色精灵 该用户已被删除
板凳
发表于 2015-2-5 12:35:21 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-11 20:28:35 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
蒙在股里 该用户已被删除
5#
发表于 2015-2-27 04:20:16 | 只看该作者
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
只想知道 该用户已被删除
6#
发表于 2015-3-1 20:58:26 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
简单生活 该用户已被删除
7#
发表于 2015-3-10 23:40:50 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
admin 该用户已被删除
8#
发表于 2015-3-16 22:13:10 | 只看该作者
那么,ASP.Net有哪些改进呢?
若天明 该用户已被删除
9#
发表于 2015-3-23 04:13:50 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
若相依 该用户已被删除
10#
发表于 2015-3-24 23:33:40 | 只看该作者
多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。
乐观 该用户已被删除
11#
发表于 2015-4-14 16:28:32 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
金色的骷髅 该用户已被删除
12#
发表于 2015-4-21 12:20:22 | 只看该作者
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
海妖 该用户已被删除
13#
发表于 2015-4-24 12:28:31 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
再现理想 该用户已被删除
14#
发表于 2015-4-26 08:12:25 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
第二个灵魂 该用户已被删除
15#
发表于 2015-5-4 17:41:18 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
16#
发表于 2015-5-6 13:10:47 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
飘飘悠悠 该用户已被删除
17#
发表于 2015-7-10 09:06:08 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
再见西城 该用户已被删除
18#
发表于 2015-7-11 14:37:58 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
山那边是海 该用户已被删除
19#
发表于 2015-7-12 20:18:43 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 16:54

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表