基于PDF文档的网络学习资源建设

(整期优先)网络出版时间:2009-09-07
/ 4
【摘 要】 目前最流行的电子文档格式--PDF文档,集多媒体信息于一身,交互方式丰富,并且可在Web上发布和传递具有独特优势。本文在分析PDF文档和Web数据库进行双向数据传递机理的基础上,对如何利用PDF文档结合ASP技术开发网络学习资源进行了探讨。

【关键词】 PDF文档;ASP;网络资源


数字化、网络化、信息化成了新世纪人们生活的一种状态。每个角落、每个部门、每个领域都渗透着计算机和计算机网络。计算机网络的大撞击,网络学习资源使教育也在发生质的飞跃,给远程教育带来了欣欣向荣的景象。面对众多纷繁的网络学习资源,也存在一个物竞天择的问题。PDF文档作为一种跨平台的通用电子格式,对文档信息及多媒体信息的传播有独特的优势。

一、PDF文档在Web上的技术优势

   1. PDF文档集多媒体信息于一身

   PDF(Portable Document Format便携文档格式)为Adobe公司开发的一种电子文档格式,它将文字、字型、格式、颜色、图形图象、超文本链接、声音、动态图象等信息封装在一个文件当中的一种通用电子格式,目前已成为数字化信息上的一个工业标准。和普通的Web不同,PDF文档能将多媒体信息捆绑在一起,文件位置发生变化时根本不用担心其他信息的丢失。利用PDF文档在网络上传递多媒体信息具有一定的技术优势。


   2. PDF文档具有交互性

   PDF文档在Web上发布信息时常用的交互事件驱动行为(Action)有下面几种类型:

   ● Go to View:跳转到当前文档某处,显示文档内容或打开另一个PDF文档某处显示文档内容。此行为和HTML中的超链结相比更具灵活性。

   ● Open file:打开一个非PDF文档文件,如与PDF文档同在Web上的HTML程序、ASP(Active Server Pages)程序、Flash动画文件等。

   ● Wold Wide Web Link:跳转到指定的URL,可以使用http、ftp、mailto协议定义的超级链接。

   ● Reset form:清除PDF文档表单中各域当前内容,恢复原设计时定义的缺省值。此行为能够实现动态信息更新。

   ● Submit form:提交PDF文档表单中各域变量的值给指定的URL,如CGI(Common Gateway Interface)程序、ASP程序等。

   ● Show/hide field:显示或隐藏指定的交互元素对象。它非常适用于建立动态信息显示、动态交互窗口显示的页面。

   这些交互事件驱动行为类型,在Web上可以产生丰富的交互方式,使得PDF文档在Web上增色不少。


   3. PDF文档在Web上出版和传输能力

   PDF文档是一种通用的文件格式,不论什么样的应用程序或平台,PDF都可以保存所有原始文档的文本信息及多媒体信息,文件占用的空间很小,非常便利于电子邮件或互联网的发放和携带信息传播。

   只要使用含Acrobat Reader插件的网络浏览器都可以在Web上阅读PDF文档。对于支持PDF文档分页下载显示的服务器,并且在Acrobat Reader浏览插件的选项设置中使用了后台下载选项, PDF文档页面内容显示的速度将大大提高。目前支持PDF文档分页下载显示的Web服务器很多,常见的有:WebSite,WebSite Professional,Fastrack server 2.0,Enterprise server 2.0等。对于不支持PDF文档分页下载显示的服务器产品,通过网关接口程序(CGI)、ActiveX技术,可以能轻而易举地达到这一目的。

二、PDF文档的结构

   PDF文档的组成,有三个层次:

   ● 内容层。包含文件中所有文字和图象的内容。

   ● 基本信息层。包含有关文件的基本信息,如字体信息、导航器引用表等。

   ● 增强信息层。包含增强功能的信息,如超文本链接、书签内容、文章信息等。

   在PDF文档中包含了一种数据存贮格式FDF(Form Data Format),处理于表单域数据输出和导入,是一种纯文本文件。PDF文件由文件头、文件主体、交叉引用表、文件尾四个部分组成。

   FDF文件头的首行表明了当前文件所使用的FDF规范版本。

   FDF文件主体主要由catalog对象组成。Catalog对象仅含一个关键字FDF。关键字FDF的值包含如下项目:

   Fields:包含一组域属性的定义

   F:指定Form输出或导入数据的PDF文件名等

   项目Fields的属性定义包含下列描述:

   T:域名

   V:域值

   OPT:选择项域的各项值等

   PDF文件尾由关键字trailer间接引用FDF文件体的catalog对象关键字root的一个值对及文件结束标记%%EOF组成。


   PDF文档是通过一系列对象序列来构造的。PDF对象包括直接对象和间接对象,间接对象是经过标识了的PDF对象,直接对象通常有布尔型、数值型、字符串型、名字型、数组型、字典型、空对象、流对象等基本类型。一个PDF文档包含了一个以上的页面,而每一个页面都可以包含文档、图形图象,继而加入声音和动画。在多媒体信息的组合上,完全将多种媒体信息融会在一起。

三、PDF文档与Web数据库

   PDF文档的表单是PDF页面控制的对象,也是PDF向Web数据库进行数据信息传递的接口,还可以向Web数据库读取相应数据。表单的域、字段变量都能和Web数据库建立数据通道。通常Web数据库接受来自客户端的数据一般都采用CGI程序实现。开发CGI程序的语言工具众多纷繁。PDF文档作为目前电子文档的一种通用格式,其中提供的和Web数据库接口的内部结构域和字段变量,大大增强了它在互联网上的使用。我们在构建PDF文档携带的多媒体网络信息资源过程中,借助了ASP技术向Web上发布PDF,同时接受来自客户端的交互数据。


   1. PDF文档表单向Web数据库提交数据

   在Adobe Acrobat 4.0 PDF开发环境中,构造一个学习者登录注册(以学习者注册信息为例)信息表单的PDF文档,文件名为Login.pdf,表单中各域名与Web数据库字段名一一相对应起来。如图所示:(略)


   表单中,按钮“注册”通过鼠标事件Mouse Up驱动行为Submit form实现向服务器应用程序传递参数信息。在定义Submit form行为时,保持服务器应用程序的URL和提交信息的ASP程序相一致。输出格式为HTML form(URL encoded),选择输出的表单域的域名。

   在服务器的ASP应用程序中,利用VBScript语句Request来获取PDF文档表单域的域名参数信息,书写格式为:

   Request(“field_name”)

   对于接受到的PDF文档的表单数据,将通过ODBC驱动注入Web数据库中。服务器中的ASP程序关键代码如下:

   <% d1= Request(“name”)%><%=d1%>

   data.path=server.MapPath“login.mdb”

   set conn=server.createObject“ADOBE.Connection”

   conn.Open “Drive=Microsoft Access Drive .mdb

   dbp=&data_path

   SQL=“INSERT INTO dataname……” '和PDF表单域字段对应

   SQL=SQL+VALUES'“&D1&”'' “&d2&” '…

   Set RS=Conn.ExcuteSQL%>

   <a href=/login.pdf>Return login.pdf

   在构造进行网络试题测试时,Web数据库取数据库Networktest.mdb,ASP程序中部分代码同上,都是接受PDF文档表单域的参数。


   2. 从Web数据库中提取数据生成PDF文档

   在构造的网络学习资源中,少不了要给客户端实时生成、传送试题,利用PDF文档也能轻易实现。主要就是从Web数据库中读取字段数据,生成相应PDF文档表单域字段。对于上面的程序就是一个逆过程。建立一个名为test.pdf文档文件表单域字段和数据库相对应。其他设置同上所述。

   服务器ASP应用程序,从Web数据库读取字段数据后,生成FDF文件返送浏览器PDF文档。在这里PDF文档中的FDF文件格式是ASP和PDF文档的数据接口,在生成FDF格式之前必须定义服务器端的MIME类型为Application/Vnd.fdf的语句。

   从Web数据库读取记录动态生成PDF文档,ASP应用程序代码如下:

   <% Name=Request“name” %>

   <% if Not trimName=“ ” then

   data_path=server.mapPath“networktest.mdb”

   set conn=server.createObject“Adobe.connection”

   conn.Open“Drive= Microsoft Access Drive.mdb dbp=”& data_path

   SQL=“ selectform data where name like ' ”&name&”'

   Set RS=Conn.ExcuteSQL

   IF Not RS.EOF then

   Number=RS0A=RS1B=RS2


   C=RS3D=RS4right=RS5

   Else

   Number=“ No found”

   End if

   RS.close

   Conn.close

   Endid%>

   <</fdf

   <</field I<</T number/V<%=number%>>>

   <</T A/V<%=A%>>>

   <</T B/V<%=B%>>>

   <</T C/V<%=C%>>>

   <</T D/V<%=D%>>>

   /FNetworktest.pdf

   >>

   >>end obj trailer

   <</Root 1OR>>

四、资源系统的主要组成部分

   该网络学习资源系统采用了最常见的客户机/服务器网络模型(即C/S模型),如图所示:


   1. PDF文档库

   服务器端提供了以PDF文档为依托的多媒体信息资源库。对于所有的学习内容或测试题信息,全部以PDF文档携带。在客户浏览端,不管其浏览目的如何,附带上Adobe公司的Acrobat reader插件,就能很好地显示出学习的内容。其页面上的内容,不会因为浏览器的设置不同而出现异样。PDF文档的制作简单,可以使用Word97、2000,也可以使用Acrobat 4.0。(目前Acrobat 5.0新版本的功能有了很大的扩充,和PDF文档相关的主要有:基于Adobe PDF 文件快速编制新文档和使用 Adobe PDF表单搜集更为准确的信息,降低成本。文档的结构和制作方式没有多大的变化。作为在4.0版本环境中开发的文档和资源,在5.0版本中同样可以使用。)这为后期的维护提供了极大的方便。图为PDF文档的制作流程:(略)


   本网络资源开发应用于摄影技术基础的网络学习。现以照相机的结构原理一节为例,对PDF文档的制作过程和应注意的事项加以说明。照相机结构原理的讲解采用文本描述、图象展示、声音解说和动画演示。制作一个完整的、包含上述信息组合的PDF文档的步骤如下:

   (1)制作、收集素材 即对以上的四种媒体信息进行制作、加工。文字描述应尽量形象化,并结合图片来讲解照相机的内部结构。考虑网络传输及显示的速度,所有的图象均采用JPG格式;由于PDF文档只支持wav声音格式,因此要配置的音频内容要尽量精简;PDF文档支持所有的动画格式,如MPEG、AVI、Flash动画等。AVI格式的动画在PDF文档中有两种播放形式:一种是嵌入式,即画面嵌在文档里面,占用了文档的部分面积;另一种是浮动式,即浮在文档上面。当画面布局过于紧凑时,浮动式可以节省页面空间。

   (2)页面布局及生成 当素材收集完成后,就要将媒体信息布局组合。只要安装了Acrobat4.0,Word97、2000就可以将Word文档生成PDF文档。Word具有很强的排版功能,因此将文字和图像预先在Word中处理好后,再将Word文档转换成PDF文档比较方便。安装了Acrobat4.0后,Word“文件”菜单下就会多出一项“Create PDF”子菜单。点击此命令,按照框中的提示,即可完成PDF文档的生成。此时注意,要为声音和动画留出空间。

   (3)启动Acrobat4.0环境,加入声音和动画 在Acrobat4.0中提供了给PDF文档添加声音和动画的工具。在生成的 PDF文档的适当位置加入声音和动画后即告完成。

   (4)对所使用的素材利用目录进行归类,以方便后期的维护和修改 这也是比较关键的一步。制作完成的PDF文档放置在服务器的PDF文档库中,即可用ASP技术向Internet发布了。


   2. 课件、积件、多媒体资源库

   该库存放制作PDF文档所需的多媒体元素,积件、课件资源丰富学习者的学习内容,为学习者提供多样的学习方式。方便PDF文档的交互行为的链接,也便利多媒体元素的修改而不会影响PDF文档。库中的各类资源归类存放,创建、组织、修改、维护都便利。


   3. 数据库系统

   Web数据库以Access为其数据源,主要应用在三个方面:

   (1)学习者信息管理库 该数据库记录学习者的学习进程,包括学习速度、练习次数、交流次数、提问情况、成绩、学习时间等。对于每一位注册了的学习者,该库中将自动建立一个单独的表来存放学习者的学习进程。一位学习者对应一个表。该数据库可以为教师直接访问,便于了解学习者的学习状况、学习特点、学习模式等,为教师出题、组织教学资源等提供一些参考资料。

   (2)交流信息库,包括师生之间、学习者之间的交流信息 本资源系统提供网上实时交流功能,相当于聊天室的实时通信方式。该聊天室和交流信息库连接,所有交流的信息都通过交流信息库进行交换。在这里,教师可以组织学生讨论,学习者可以自由发言。在聊天室里,所有成员可以随意地邀请和被邀请,讨论问题和交流经验。


   (3)题库 该数据库由资源管理者或教师管理,存放针对学习内容的练习题和测试题。教师可以在此创建、管理试题,并对学习者的作答情况给予反馈。试题分为客观题和主观题。客观题可支持单选、多选、填空和判断等题型。对于客观题的作答,系统可以直接给出评分结果,并且记录下每一次的作答情况,为教师评价学习者提供必要的数据。主观题则需要教师来反馈结果。

   本资源系统还提供网上非实时交流功能,相当于BBS。学习者可以在上面求助,也可以发表言论,给其他学习者指引方向。所有学习者提出的问题,全被收集在交流信息库中。这种创建信息、评论信息、交流信息的协作学习情景。


   4. ODBC驱动

   开放数据的驱动系统数据源于Access,通过ODBC可以使得数据库系统中的数据向客户端发送。


   5. Web Server和ASP或CGI

   Web Server用来接受来自客户端的请求,并结合ASP或CGI实现各种数据的传递,特别是来自PDF文档表单域的数据。


   6. 客户端应用程序

   为能顺利地架起客户端与服务器之间的数据交流,除了具有浏览器和阅读PDF文档的插件外,作为远程教育还要具备记录学习者学习情况的数据信息。该信息不必存放在服务器上,以节省时间和空间。通常采用ASP技术结合ODBC在客户端虚拟服务器上建立一数据库,存放记录信息。


   7. 学习者信息记录

   对于学习者学习进程,除了服务器上的信息库有所记录,同时也需要在客户端也有所记录,以便于学习者查看,比较现在和过去的情况,分析自身的变化,进行自我评价。将此信息记录在客户端,还可以避免访问服务器的不便。


   8. 浏览器

   带有Acrobat插件的Web浏览器,可解释ASP脚本和显示PDF文档内容,支持PDF文档的分页下载,可提高网络速度,使用同样的Acrobat插件和服务器构筑同一的平台,方便双方的数据传递和交互。

五、结束语

   利用PDF文档结合ASP技术来开发网络资源,配置要求低,操作简单易学,PDF文档自身结构简练,传输快速,阅读方便,便于开发人员协同开发,便于资源共享和交流推广。可以预见,随着资源建设标准化的进一步推进,PDF文档作为未来电子文档标准格式之一,将在网络学习资源建设中有着更广阔的应用前景。



参考文献

1 林天.PDF文档与Web数据库接口技术初探J.计算机应用,

   2000,(5)

2 袁望靖,赵工凡.电子出版大师Adobe Acrobat 4.0M.北京:

   北京希望电子出版社,2000.

3 王国荣.ASP网页制作教程M.北京:人民邮电出版社,2000.