设为首页 加入收藏

TOP

利用Visual C++开发ASP图像处理组件(七)
2012-11-04 14:12:12 来源: 作者: 【 】 浏览:1485
Tags:利用 Visual 开发 ASP 图像处理 组件
  四、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的图片验证数字输出及字符输出将是轻而易举。



首页 上一页 4 5 6 7 下一页 尾页 7/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Visual C+6.0实现文本串的自由拆分 下一篇MFC程序员的WTL指南之工具条与状..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: