|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。一般我们在制造网站时,关于产物图片、或旧事图片等展现性的图片会碰到由于图片展现地位分歧引发的尺寸分歧的成绩。有些伴侣大概讲了,我可使用img标签的width和height属性!可使用CSS来限定!是的,没错,可是我们有无注重到一个成绩,当你上传的图片尺寸小的时分,你要在年夜的地位显现,图片就会拉的很花。同理,你上传的图片尺寸很年夜,而地位很小时,图片不仅花了,并且下载速率会十分慢。
一样平常的做法是上传时利用aspjpeg组件主动栽切出必要的几种尺寸,然后分离保留。固然,我还见过请求分离上传年夜图、小图的初级做法。如许做的弱点很分明,假如网站改版,需求尺寸改动时,图片都要从头栽切一次。而且,当编纂一张图时,要同时交换多个尺寸。
上面,我将我的心得具体讲授一下,接待交换!
我的办法能够到达以下几个效果:
1、尺寸随便,图片不会强迫减少或缩小的很丢脸;
2、能够随便加水印,并可随时修正;
3、能够防盗链。
道理是,使用URLREWRITE,将图片链接交于ASP处置,在ASP文件中利用ASPJPEG组件,立即处置图片巨细,并可实行立即加水印等义务。
详细做法是,在链接图片时,IMG标签的SRC属性利用如许的地点,比方:http://www.azhi.net.cn/photo/T16qFXXddnOtz1upjX_80_80.jpg,然后接助于UrlReWrite手艺,将这个地点转为http://www.azhi.net.cn/picture.asp?p=T16qFXXddnOtz1upjX.jpg&w=80&h=80。那末,Picture.asp文件的详细代码以下:复制内容到剪贴板代码:
<%
DimoJpeg,sWidth,sHeight,sPosW,sPosH,sPath
sPath=Request.QueryString("p")
sWidth=Request.QueryString("w")
sHeight=Request.QueryString("h")
SetoJpeg=Server.CreateObject("Persits.Jpeg")创立ASPJPEG对像
oJpeg.OpenServer.MapPath("/photo/"&sPath)把文件读出来
IfsWidth""ThenoJpeg.Width=sWidth将图片的巨细设置为请求的巨细
IfsHeight""ThenoJpeg.Height=sHeight
---水印操纵入手下手---
oJpeg.Canvas.Font.Color=&HFFFFFF水印字的色彩
oJpeg.Canvas.Font.Size=12水印字的巨细
oJpeg.Canvas.Font.Family="arial"水印字的字体
oJpeg.Canvas.Font.Bold=True水印字是不是加粗
sPosW=oJpeg.OriginalWidth盘算水印字的地位坐标
IfsWidth""ThensPosW=sWidth
sPosH=oJpeg.OriginalHeight
IfsHeight""ThensPosH=sHeight
oJpeg.Canvas.PrintsPosW-58,sPosH-18,"azhi.net.cn"写字上往
oJpeg.Canvas.Font.Family="宋体"
oJpeg.Canvas.PrintsPosW-46,sPosH-28,"阿智的博客"
---水印操纵停止---
oJpeg.SendBinary输入处置后的图片
SetoJpeg=Nothing
%>源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码 |
|