分享到:
计算机应用 最近更新
讨论未来电商发展趋势论文提纲
浅谈自媒体对现代生活的影响
论文范文:网络发展对青少年心理发展的影响
论我国电子商务应用中的支付问题
电子商务模式研究
中小型企业客户关系管理系统的开发与应用
中石油浙江销售分公司信息管理系统设计
图书馆管理系统分析与设计
物流师职业资格认证报名管理系统
销售管理系统的开发与设计
酒店客房管理系统
财务管理系统的实现
餐饮管理系统设计与实现
社区卫生服务管理系统
汽车营销企业的客户关系管理系统
明道管理咨询有限公司客户关系管理系统设计与开发
企业订单管理系统开发
基于WEB的CRM信息系统的开发与研究
高校科研工作量统计系统的开发与设计
基于Struts的连锁店管理系统
基于VML的在线考试系统图形题型的研究与应用
 摘  要  在线考试系统利用网络可以随时随地对学生进行考试,图形题型的页面实现是其中一项关键技术。本文主要研究网络环境下在线考试系统的组成、运行机制和实现方法。实例系统基于B/S架构,采用ASP.NET、ADO.NET技术及C#语言,Web页面画图采用VML,数据库平台采用了SQL Server 2000。系统主要包括组卷子系统、考试子系统、阅卷子系统、在线画图子系统等,对同类系统的研究开发具有较好的借鉴作用。
    关键词  在线考试系统;VML;ASP.NET;C#
 
1  引言
    现代远程教育可以在目前教育资源分布不平均的现状下,通过共享进行资源合理化配置,使得有限的教育资源能够得到最大限度的利用。从技术的角度来讲,当前投入使用的教学支持系统多为两种情况。第一种情况是系统采用C/S结构。第二种情况是采用B/S结构架构。用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成3-tier结构。B/S结构主要是利用了不断成熟的Web技术,结合浏览器的多种Script语言和ActiveX技术,用通用浏览器实现了原来需要复杂专用软件才能实现的强大功能,节约了开发成本,实现了开发环境与应用环境的分离,提高了系统的可扩展性和安全性。
2  在线考试系统的关键技术研究
    在线考试系统目的就是为了实现考试无纸化,而选择题、判断题实现自动评阅这项技术现在已经比较成熟。而填空题、图形题、主观题的评阅一直是目前技术人员研究的方向,通过Web页面画图实现对图形题的在线评阅是在线考试系统研究的关键技术之一。
    从理论上讲,有多种技术方案可以实现在线作图技术,利用不同的实现技术,其优缺点也是不同的,目前的主流实现方法的特点阐述如下:
    1)在线操作WORD实现画图
    (1)引用DLL程序集,添加Interop.Word和Interop. Microsoft.Office.core引用,在代码中也必须添加相应的命名空间,操作WORD必须让用户有读写的权限,这些在Webconfig里面进行了相关配置。
    (2)系统自动生成所需操作的WORD文档,WORD文档内包含用户的姓名,用户编辑WORD的日期。
    (3)利用WORD强大的图形编辑功能对所需的图形进行编辑,WORD文档将先保存在本机,用户必须对其进行上传,用户在进行上传时,用户名和日期也将一起上传,教师要对试卷进行评阅时,只需要打开所需评改的WORD文档。
    优点:完全具有WORD图形编辑器的所有功能。缺点:并不是真正意义上的Web画图,而且操作比较繁琐。
    2)Java Applet实现在线画图
    Java Applet实现在线画图,首先必须编写.java程序。
程序的思想:当鼠标的一个键(左键或者右键)被按下并拖动时,产生一个鼠标事件,相应的方法mouse Drag被调用,在这个方法中,我们在当前鼠标所在点和前一个点中画一条线,然后将当前鼠标所在点的位置保存在变量previous和previously中,以供下次使用。
    当鼠标按键被放开时,表示画图已经结束,这时将previous和previously都设置无效值为-1。
图1  生成.class文件
    然后,生成.class文件,生成.class文件过程如图1所示。
    最后把Scribble. class类嵌入到网页里面,即可以进行画图了。
    而Java Applet实现在线画图的难点在图形的保存,用鼠标进行绘画的图是记录在类里面的,而不是生成网页的htm里面。
    提出解决方案:记录点的坐标,如直线记录两个点,曲线记录三个点,把坐标上传到服务器,需要察看时只需要根据这些点的坐标重新生成一次图形即可。
    优点:在线画图较容易实现。缺点:保存实现困难。
    3)Flash实现在线画图
    首先,我们得选择一幅图片作为背景,然后把背景导入到舞台。接着把它转变成电影元件,并创建一个新的MC元件,在第一帧处写入相应的动作操作。相同的思想,flash画图也是通过对鼠标处理的相应事件进行实现的。
    而flash实现在线画图的难点也在保存,主要原因是受限于flash的Flash Player为保护最终用户的安全而作的限制。
    提出解决方案:如果是保存本机,用shared Object(本地共享对象)以Object形式保存数据;保存到服务器,用字符串形式保存,保存时只要记录点的坐标和颜色等就可以了。
优点:在线画图可以实现且界面较为美观。缺点:保存实现困难。
    4)VML实现在线画图
    VML(Vector Markup Language)矢量可标记语言。VML相当于IE里面画笔,能实现你想要的图形,而其结合脚本,可以让图形产生动态的效果,可以任意放大缩小而不损失图形的质量。VML是微软1999年9月附带IE5.0发布的,因此,VML智能支持IE5.0或以上IE版本。因而VML具有强大的画图功能。
3  VML实现在线画图

    (1)需要在HTML语言里面加上引用(图2所示)注意:因为这里没有用到OFFICE的扩展功能的话,所以忽略第二个schema,这里引用为<HTML xmlns:v>。

图2  引用VML

    同时我们需要在STYLE元素中注册VML和Microsoft Office Extensions 。
    (2)定义VML模版的时候,可以和HTML的CSS一样理解,它是定义好的一种形状,下次使用的时候直接声明type属性就可以了,在定义模版的同时也定义了V为VML的变量。
    (3)定义线<v:Line></line>、圆形<v:Oval></Oval>、矩形<v:rect></rect>、圆矩形<v:roundrect></roundrect>、而插入图片、插入文字进行了可视化编辑是定义在<span></span>里面。
    (4)画图中的放大、缩小等操作是通过Shape来实现的。Shape是VML最基本的对象,利用它可以画出所有你想要的图形。在VML中,使用的坐标并不是Document的坐标,它有自己的坐标系,这样一来,动态改变它的坐标,就可以实现放大、缩小、旋转等功能了。
    (5)VML保存,我们把在网页上画的图形直接保存成htm格式,然后上传导入服务器即可。
VML在线画图板如图3所示,VML设定图形可视化定义代码为:
图3  VML在线画图板界面
<v:Line style=#39;position:absolute;z-index:2000;display:none#39; id=#39;line1#39;>  <!--钢笔可视化-->
<v:Stroke dashstyle=#39;shortdash#39;/>
</v:line>
<v:Oval style=#39;position:absolute;z-index:2000;display:none#39; id=#39;oval1#39;>  <!--圆形可视化-->
<v:Stroke dashstyle=#39;shortdash#39;/>
</v:oval>
<v:rect style=#39;position:absolute;z-index:2000;display:none#39; id=#39;rect1#39;>  <!--长方形可视化-->
<v:Stroke dashstyle=#39;shortdash#39;/>
</v:rect>
<v:roundrect style=#39;position:absolute;z-index:2000;display:none#39; id=#39;roundrect1#39;> <!--圆锯形可视化-->
… …
 
随机推荐
以湖南城乡规划信息港为例论行业信息港的建立
基于Java ME和Java EE的移动商务系统应用研究
中小型企业客户关系管理系统的开发与应用
中频数字接收机中的NIOSⅡ设计与应用
蜜网中基于Linux平台的蜜罐技术的研究
基于本体的Web文档知识获取的框架研究
Linux系统中基于动态PL/SQL数据库研究开发
可扩展SNMP代理在WiMAX 网管模块中的应用
基于OLAP技术的物流数据仓库应用研究
市政府多媒体查询系统的设计与实现

设为首页 | 关于我们 | 广告联系 | 友情链接 | 版权申明

Copyright 2009-2014 All Right Reserved [粤ICP备05100058号-11]