四、ASP程序使用此组件输出图像到用户浏览器
在使用之前首先在服务器上注册此组件,方法:
拷贝XTAspImage.dll 到系统目录,一般为C:\WINNT\SYSTEM32 运行-> regsvr32 XTAspImage.dll 如果安装成功,会有成功提示。此过程只使用一次。下面是在asp里调用方法:
1. <!--#include file="Config/Function.asp"--> 2. <!--#include file="Config/SiteInfo.asp"--> 3. <!--#include file="Config/DbConn.asp"-->
4. <% a) Dim TeachID, PageTextLen, Page, SumPage, BodyLen, \ TemplateBody, Width, Height, FHeight, sEndStr b) TeachID = INT(Request("TeachID")) c) PageTextLen = INT(Request("PageTextLen"))
d) IF PageTextLen <= 0 THEN i. PageTextLen = 300 e) END IF
f) Page = INT(Request("Page"))
g) Set Rs = Server.CreateObject("ADODB.Recordset") h) Sql="select * from Article where id=" & TeachID i) Rs.open sql,conn,1,1
j) IF NOT Rs.EOF THEN i. TeachingBody = Rs("Content") & constEndStr k) ELSE i. Response.Write("记录不存在") ii. Rs.Close iii. Set Rs = Nothing iv. Conn.Close v. Set Conn = Nothing vi. Response.End l) END IF
m) BodyLen = len(TeachingBody)
n) SumPage = GetMaxPageNum(BodyLen, PageTextLen)
o) Dim sPageText
p) IF Page >= SumPage THEN i. Page = SumPage q) END IF
r) IF Page <= 0 THEN i. Page = 1 s) END IF
t) sPageText = mid(TeachingBody, (Page-1) * PageTextLen + 1, PageTextLen)
u) Dim sFont v) sFont = Request("FontFace")
w) Dim FileName
x) FileName = GetTempFileName(Server.MapPath("tmp"), "XTImg_", "jpg")
y) On Error Resume Next z) Set Obj = Server.CreateObject("XTAspImage.AspImage") aa) Response.Clear bb) If Err.Number <> 0 Then i. Response.Write "请先在服务器安装信天ASPIMAGE组件!" ii. Response.End cc) End If
dd) Obj.bstrFilePath = FileName ee) Obj.lHeight = INT(Request("Height")) ff) Obj.lWidth = INT(Request("Width")) gg) Obj.bstrFont = sFont hh) Obj.lLeft = INT(Request("ImgLeft")) ii) Obj.lTop = INT(Request("ImgTop")) jj) Obj.llfHeight = INT(Request("llfHeight")) kk) Obj.lWeight = INT(Request("Weight")) ll) Obj.l3D = INT(Request("l3D")) mm) Obj.lCSet = INT(Request("CSet")) nn) Obj.bstrText = sPageText
oo) IF Obj.OutTextImg = 0 THEN i. Dim lDelFile ''是否删除临时文件,0为不删除,非0为删除 ii. lDelFile = 1 iii. ret = Obj.OutImg(FileName, lDelFile) iv. ''Response.Write "输出文件成功!" pp) ELSE i. Response.Write "输出文件失败!" qq) END IF
rr) Set Obj = nothing 5. %> 6. <body> 7. </body> 8. </html> |
1,2,3 行为包含一数据库连接文件及网站配置信息
4.a 至 4.x 从通过传入ID号从数据库里读取文本,并通过字数计算输出页要输出的文本并保存到sPageText里。 4.y 至 4.nn创建信天asp 图像处理组件并设置输出文件名,图像长宽,字符集,字体等。
4.oo以后输出文件及把图像数据转发给用户浏览器。
在普通网页里的调用方法为:
<img src="outteachimg.asp TeachID=67&PageTextLen=500&Height=300&Width=600&Page=1& FontFace=%BB%AA%CE%C4%D0%C2%CE%BA&l3D=0&FontColor=0&CSet=134&BGImgPath=&ImgLeft=10& ImgTop=20&ImgBottom=10&ImgRight=10&llfHeight=24&Weight=300" width="580" > |
五、结束语
图片处理组件在互联网程序开发中使用很常见,例如我们注册论坛会员或商城会员里,总会有提示输入验证码的提示,而此验证码为了防软件自动识别,是以图像数据输出的。当我们掌握了图片处理组件开发方法时,开发基于asp的图片验证数字输出及字符输出将是轻而易举。
|