999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MathML的在線公式編輯器的實(shí)現(xiàn)與應(yīng)用

2008-12-31 00:00:00楊宗凱孫建劉
計(jì)算機(jī)應(yīng)用研究 2008年10期

 收稿日期:2007-12-15;

修回日期:2008-03-04

基金項(xiàng)目:國(guó)家“十一五”科技支撐計(jì)劃重大資助項(xiàng)目(2006BAH02A24);國(guó)家教育部/外國(guó)專家局高等學(xué)校學(xué)科創(chuàng)新引智計(jì)劃資助項(xiàng)目(B07042); IBM大學(xué)合作項(xiàng)目(SUR2006)

作者簡(jiǎn)介:

郭威(1983-),男,湖北孝感人,碩士研究生,主要研究方向?yàn)橹R(shí)服務(wù)(weiguo031@163.com);劉三

(1973-),男,安徽桐城人,副教授,博士后,主要研究方向?yàn)橹R(shí)服務(wù)、人工智能;楊宗凱(1963-),男,河南鄭州人,教授,博導(dǎo),主要研究方向?yàn)榫W(wǎng)絡(luò)教育標(biāo)準(zhǔn)與技術(shù)、現(xiàn)代通信網(wǎng)絡(luò)、智能信號(hào)處理;孫建文(1983-),男,重慶人,博士研究生,主要研究方向?yàn)橹R(shí)服務(wù);劉林(1983-),男,四川合江人,碩士研究生,主要研究方向?yàn)橹R(shí)服務(wù).

(華中師范大學(xué) 教育信息技術(shù)工程研究中心 武漢 430079)

摘要:

在闡述了數(shù)學(xué)標(biāo)記語(yǔ)言MathML和公式插件WebEQ的基礎(chǔ)上,提出了一種基于MathML的在線公式編輯器的設(shè)計(jì),并以文本編輯器FCKeditor為平臺(tái)進(jìn)行了實(shí)現(xiàn),最后給出了具體應(yīng)用與進(jìn)一步的改進(jìn),較好地解決了上述問(wèn)題。

關(guān)鍵詞:數(shù)學(xué)標(biāo)記語(yǔ)言; WebEQ; 在線公式編輯器; 實(shí)現(xiàn); 應(yīng)用

中圖分類號(hào):TP391

文獻(xiàn)標(biāo)志碼:A

文章編號(hào):1001-3695(2008)10-3177-04

Implementation and application of MathML-based on-line formula editor

GUO Wei LIU San-ya YANG Zong-kai SUN Jian-wen LIU Lin

(Engineering Research Center for Education Information Technology Central China Normal University Wuhan 430079 China)

Abstract:In the Web-environments how to input,edit,transmit and display math formula on-line has become one of the most difficult problems to develop e-learning and network examination on math and science subjects. After the expatiation of MathML and WebEQ this paper presented a design of MathML-based on-line formula editor and realized it on the platform of FCKeditor. Finally gave some applications and improvements which resolved the above difficulty efficiently.

Key words:MathML; WebEQ; on-line formula editor; implementation; application

0引言

隨著Internet的快速發(fā)展,越來(lái)越多的人通過(guò)Web發(fā)布、獲取和管理知識(shí)。數(shù)理公式作為知識(shí)體系中的重要組成部分,在基于Web的網(wǎng)絡(luò)教學(xué)、信息發(fā)布、學(xué)術(shù)交流等方面起著非常重要的作用,特別是在一些遠(yuǎn)程教學(xué)和網(wǎng)絡(luò)考試系統(tǒng)中,在師生互動(dòng)討論、教師輸入試題、學(xué)生解答試題等關(guān)鍵環(huán)節(jié),在線輸入、編輯、傳輸和顯示數(shù)理公式已成為一種十分迫切的要求[1]。然而在目前的Web環(huán)境下,由于數(shù)理公式自身的復(fù)雜性以及目前Web中HTML對(duì)各種數(shù)理符號(hào)特殊標(biāo)記的支持非常有限,有關(guān)數(shù)理公式的輸入、編輯、傳輸和顯示問(wèn)題一直困擾著廣大師生。目前,解決此類問(wèn)題的方法主要有以下四種[2]:

a)圖片法。Web發(fā)布者先通過(guò)MathType等客戶端公式編輯器來(lái)編輯公式并將其轉(zhuǎn)換為圖片(JPG或JIF格式),然后嵌入到HTML網(wǎng)頁(yè)中,最后公式以圖片的形式在客戶端的瀏覽器中顯示。這種方式的缺點(diǎn)有:若發(fā)布者要更改公式,必須重新繪制公式的圖片;訪問(wèn)者不能獲取公式的語(yǔ)義,也不能編輯公式。

b)專用的數(shù)學(xué)公式的瀏覽器插件。有些公司為了配合本公司自己的教學(xué)軟件或教學(xué)網(wǎng)站,設(shè)計(jì)了專用的插件。訪問(wèn)者要觀看數(shù)理公式,必須先要下載這些專用的瀏覽器插件。這種方式的主要缺點(diǎn)有公式復(fù)用性差;軟件獨(dú)立性差。

c)使用LaTex。LaTex是一套基于習(xí)慣性書(shū)寫(xiě)思維的數(shù)學(xué)公式表示方法,一些大的軟件公司開(kāi)發(fā)出一些專用的LaTex瀏覽器插件,通過(guò)這種方式,瀏覽器可以直接觀看嵌入在HTML中的公式符號(hào)。這種方式的優(yōu)點(diǎn)是LaTex文檔的操作簡(jiǎn)潔,復(fù)用性好;缺點(diǎn)是LaTex不是一種標(biāo)記語(yǔ)言,在網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)的格式化標(biāo)準(zhǔn)化方面的擴(kuò)展能力較差。

d)基于MathML的應(yīng)用。MathML是W3C組織制定的一套基于XML 的數(shù)學(xué)公式處理的標(biāo)準(zhǔn)。作為一種標(biāo)記語(yǔ)言,MathML在設(shè)計(jì)之初就考慮到網(wǎng)絡(luò)上的應(yīng)用和集成,所以MathML在Web上具有非常廣泛的應(yīng)用前景。

分析比較以上四種方法可以發(fā)現(xiàn),盡管前三種方法在某些特定的情景下可以解決數(shù)理公式的顯示問(wèn)題,但其在公式的在線輸入和編輯方面仍然存在較大的局限性,在標(biāo)準(zhǔn)化方面也沒(méi)有形成統(tǒng)一的標(biāo)準(zhǔn)。作為XML的一種應(yīng)用,MathML繼承了XML的大部分優(yōu)點(diǎn),已成為Internet上最重要的數(shù)學(xué)公式標(biāo)準(zhǔn),具有廣泛的應(yīng)用前景。本文提出的一種在線公式編輯器的設(shè)計(jì)與實(shí)現(xiàn),正是以MathML為基礎(chǔ),較好地解決了在線輸入、傳輸、顯示數(shù)理公式的難題。

1MathML與WebEQ 

1.1數(shù)學(xué)標(biāo)記語(yǔ)言MathML

Web技術(shù)和XML的快速發(fā)展推動(dòng)了數(shù)學(xué)信息的表示、存儲(chǔ)以及傳輸方式,提出了使用XML來(lái)描述數(shù)學(xué)表達(dá)式的理念,于是MathML誕生了。數(shù)學(xué)標(biāo)記語(yǔ)言MathML (mathematical markup language)[3]是由國(guó)際互聯(lián)網(wǎng)標(biāo)準(zhǔn)組織W3C提出的,是針對(duì)Web上數(shù)學(xué)信息的使用而研制和發(fā)展起來(lái)的一套基于XML的數(shù)學(xué)信息規(guī)范 是計(jì)算機(jī)之間交換數(shù)學(xué)信息的基本標(biāo)準(zhǔn)。它完全采用XML的定義規(guī)范,繼承了XML的大部分優(yōu)點(diǎn),具有強(qiáng)大的數(shù)學(xué)公式表達(dá)能力。 

MathML提供兩種描述數(shù)學(xué)公式的標(biāo)記:a)呈現(xiàn)型標(biāo)記(presentation markup),用來(lái)描述數(shù)學(xué)表達(dá)式的二維布局結(jié)構(gòu),它更注重表達(dá)式的顯示方式[4];b)內(nèi)容型標(biāo)記(content-markup),用來(lái)描述數(shù)學(xué)公式的邏輯內(nèi)容,它更關(guān)注表達(dá)式的內(nèi)在含義。

MathML語(yǔ)言規(guī)格1.01版于1999年7月公布,2003年10月發(fā)布了MathML 2.0。MathML 2.0是一個(gè)XML應(yīng)用,它支持在Web頁(yè)面正確顯示數(shù)學(xué)符號(hào)和在應(yīng)用之間傳遞數(shù)學(xué)符號(hào)。在2007年4月底,W3C就其數(shù)學(xué)標(biāo)記語(yǔ)言MathML發(fā)布了一個(gè)新的工作草案版本——3.0版。MathML 3.0中最有趣的工作稱之為面向內(nèi)容的標(biāo)志。 

1.2WebEQ

MathML通過(guò)標(biāo)記元素的各種屬性控制數(shù)學(xué)表達(dá)式的動(dòng)態(tài)交互過(guò)程,但對(duì)于一般用戶而言,直接使用MathML并不方便,要簡(jiǎn)易地創(chuàng)建動(dòng)態(tài)數(shù)學(xué)網(wǎng)頁(yè),可以使用一些插件。 Design-Science下的WebEQ就是一種不錯(cuò)的選擇。WebEQ開(kāi)發(fā)包提供了編輯動(dòng)態(tài)數(shù)學(xué)應(yīng)用程序和MathML代碼的Java工具和相關(guān)組件,主要由WebEQ editor、WebEQ publisher、WebEQ library以及四個(gè)Java applets(input control、viewer control、graph control、service provide)組成[5]。本文第2章有關(guān)在線公式編輯器的實(shí)現(xiàn)正是利用了InputControl和ViewerControl這兩個(gè)Java applet分別完成了數(shù)理公式的在線輸入和顯示。

WebEQ InputControl是一個(gè)功能上等同于客戶端公式編輯器的Java applet,它被嵌入到Web頁(yè)面中顯示,用戶可以直接在線輸入和編輯公式。它的最大優(yōu)點(diǎn)是所見(jiàn)即所得,即用戶在呈現(xiàn)的公式面板上選擇對(duì)應(yīng)的公式模板,再經(jīng)過(guò)簡(jiǎn)單編輯即可得到所需的公式。這種方式簡(jiǎn)潔易用,與操作WebEQ-editor、MathType等客戶端公式編輯器一樣方便。

運(yùn)用WebEQ InputControl,人們可以方便地在線輸入數(shù)理公式,而要使這些公式在Web頁(yè)面上顯示出來(lái),還要用到WebEQ ViewerControl。該applet調(diào)用ViewerControl.class類來(lái)解析MathML代碼,并將代碼所對(duì)應(yīng)的公式在頁(yè)面上顯示出來(lái)。

WebEQ插件包括WebEQ InputControl和WebEQ ViewerControl,用于在瀏覽器中輸入、顯示數(shù)理公式,支持MathML和WebTex。由于WebEQ插件以Java語(yǔ)言和MathML技術(shù)為基礎(chǔ),它與平臺(tái)和瀏覽器無(wú)關(guān)。可以預(yù)見(jiàn),隨著互聯(lián)網(wǎng)的發(fā)展和MathML規(guī)范的完善,WebEQ插件在Web上顯示和處理數(shù)學(xué)表達(dá)式的應(yīng)用將會(huì)越來(lái)越廣泛[6]。但在目前有關(guān)WebEQ插件的應(yīng)用也并非完美,問(wèn)題之一便是各種插件的應(yīng)用之間缺少整合,集成度不高。單獨(dú)使用WebEQ InputControl可以完成公式的輸入,但公式無(wú)法在網(wǎng)絡(luò)上進(jìn)一步傳輸和顯示;單獨(dú)使用WebEQ ViewerControl可以完成公式的顯示,但要求使用者具備一定的MathML的知識(shí),并且當(dāng)要顯示新公式時(shí)必須重新更改MathML代碼,靈活性差。為了克服孤立地使用這些插件帶來(lái)的局限性,本文提出的在線公式編輯器將WebEQ的兩種應(yīng)用整合到同一平臺(tái)上,使公式的輸入、傳輸、顯示流線型地完成,并成功應(yīng)用到實(shí)際系統(tǒng)中,提高了應(yīng)用的靈活性和擴(kuò)展性。

2在線公式編輯器的設(shè)計(jì)與實(shí)現(xiàn)

2.1設(shè)計(jì)

利用WebEQ插件下的InputControl和ViewerControl這兩個(gè)類可以分別實(shí)現(xiàn)數(shù)理公式的輸入和顯示功能,但要實(shí)現(xiàn)真正的在線公式編輯,必須將這兩者結(jié)合起來(lái)。要實(shí)現(xiàn)這樣的一個(gè)在線公式編輯器,本文主要的設(shè)計(jì)思路是:a)開(kāi)發(fā)一個(gè)公式編輯的頁(yè)面,該頁(yè)面要能夠完成所見(jiàn)即所得地輸入公式,自動(dòng)獲取輸入公式的MathML代碼以及解析MathML代碼將公式顯示出來(lái)等功能;b)將該頁(yè)面作為一個(gè)接口嵌入到一般的文本編輯器中,以進(jìn)一步擴(kuò)展公式的編輯和傳輸功能[7,8]。

筆者選取目前應(yīng)用十分廣泛的開(kāi)源在線文本編輯器FCKeditor作為開(kāi)發(fā)平臺(tái)。首先,在FCKeditor上增加一個(gè)新的工具欄作為公式編輯的接口,當(dāng)用戶需要輸入公式時(shí),點(diǎn)擊該工具欄,系統(tǒng)將調(diào)用JavaScript啟動(dòng)公式編輯的頁(yè)面,彈出一個(gè)公式編輯窗口;當(dāng)用戶在公式面板中所見(jiàn)即所得地輸入公式后,點(diǎn)擊窗口下端的確定按鈕,頁(yè)面能自動(dòng)獲取到輸入公式所對(duì)應(yīng)的MathML代碼;利用WebEQ插件的ViewerControl類來(lái)解析代碼;最后將公式在FCKeditor的編輯框中顯示出來(lái),再作進(jìn)一步的編輯和傳輸。整個(gè)的工作流程如圖1所示。

2.2實(shí)現(xiàn)

本節(jié)將給出具體的實(shí)現(xiàn)過(guò)程:首先需要下載兩個(gè)軟件,即開(kāi)源文本編輯器FCKeditor(筆者使用的版本為2.4.3)和WebEQ插件WebEQApplet.jar。FCKeditor是一款功能強(qiáng)大的在線文本編輯器,而且它是輕量級(jí)的,無(wú)須任何形式的安裝,移植性強(qiáng)。WebEQApplet.jar包中有兩個(gè)需要用到的class類:InputControl和ViewerControl,分別用來(lái)輸入和顯示數(shù)理公式。下載并解壓FCKeditor_2.4.3.zip得到fckeditor,保留editor文件夾及fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml四個(gè)文件,其余的文件和文件夾均可刪除。在fekeditor文件夾下,修改fckconfig.js、zh-cn.js、fckeditorcode_gecko.js和fckeditorcode_ie.js四個(gè)文件,為FCKeditor增加一個(gè)新的工具欄——插入公式。若要為該工具欄附上圖標(biāo),可用圖像處理軟件對(duì)圖片文件fck_strip.gif作適當(dāng)?shù)木庉嫼托薷摹_@樣,就為FCKeditor調(diào)用公式編輯頁(yè)面提供了一個(gè)接口。

圖2為FCKeditor所有工具欄的截圖。其中包括新增的工具欄插入公式。

接下來(lái)需要實(shí)現(xiàn)這個(gè)接口。在文件夾dialog下新建文件夾fck_ formula,在fck_formula下新建formula.html頁(yè)面,同時(shí)將WebEQApplet.jar放到fck_formula下。這里,…\\dialog\\fck_ formula\\formula.html即為新增工具欄調(diào)用公式編輯頁(yè)面的路徑,也即formula.html頁(yè)面是控制在線輸入和顯示公式的樞紐。以下是formula.html頁(yè)面的一些關(guān)鍵代碼及其說(shuō)明:

〈applet archive=″WebEQApplet.jar″ code=″Webeq3.editor.InputControl″ codebase=\".\"width=″690″ height=″200″ name=″myApplet″″〉

〈param name=″useslibrary″ value=″WebEQApplet″〉

〈param name=″useslibrarycodebase″ value=″WebEQApplet.cab″〉

〈param name=″useslibraryversion″ value=″3,7,0,0″〉

〈/applet〉

這是一個(gè)Java applet,該applet調(diào)用WebEQApplet.jar包中的InputControl類,展現(xiàn)出一個(gè)所見(jiàn)即所得的公式編輯環(huán)境,供用戶輸入公式。這里需要注意的是,codebase指示的是WebEQApplet.jar包與公式編輯頁(yè)面的相對(duì)位置,本例中兩者在同一文件夾下。圖3顯示的是在線輸入數(shù)理公式的截圖。

〈form〉

〈input type=″button″ value=“確定” onclick=″check()″/〉

〈/form〉

這行代碼是在applet的下面增加了一個(gè)確定按鈕,當(dāng)公式輸入完畢,點(diǎn)擊確定執(zhí)行check()中的代碼,完成公式的顯示。

以下是顯示公式的一段腳本,包括check()函數(shù)的實(shí)現(xiàn):

〈script type=″text/javascript″〉

var oEditor=window.parent.InnerDialogLoaded();

/*取得父窗口對(duì)象——FCKeditor文本編輯器*/

function check()

{

var mml_txt=document.myApplet.getPackedMathML(); 

/*獲取公式對(duì)應(yīng)的MathML代碼*/

var head=″〈applet archive=\\″WebEQApplet.jar\\″ codebase=\\″/TestFCKeditor/FCKeditor/editor/dialog/fck_formula\\″ code=\\″Webeq3.ViewerControl.class\\″ width=\\″200\\″ height=\\″60\\″ align=\\″middle\\″〉

〈param name=\\″useslibrary\\″ value=\\″WebEQApplet\\″〉

〈param name=\\″useslibrarycodebase\\″ value=\\″WebEQApplet.cab\\″〉

〈param name=\\″useslibraryversion\\″ value=\\″3,7,0,0\\″〉

〈param name=\\″e(cuò)q\\″ value=\\″ ″; /var tail=″ \\″〉

〈param name=\\″foreground\\″ value=\\″black\\″〉

〈param name=\\″background\\″ value=\\″white\\″〉

〈param name=\\″selection\\″ value=\\″true\\″〉

〈param name=\\″parser\\″ value=\\″mathml\\″〉

〈param name=\\″size\\″ value=\\″12\\″〉〈/applet〉″;

var dis_mml=head+mml_txt+tail;

/*包含MathML代碼的完整的applet*/

oEditor.FCK.insertHtml(dis_mml ||″ ″) ;

/*在FCKeditor編輯器中運(yùn)行applet,顯示公式*/

window.parent.cancel() ;/*關(guān)閉公式編輯窗口*/

}

〈/script〉

這段腳本語(yǔ)言的主體是函數(shù)check(),它獲取公式對(duì)應(yīng)的MathML代碼,將MathML嵌入到applet中,在FCKeditor編輯框中運(yùn)行applet顯示公式。注意這里的applet中調(diào)用的類為WebEQApplet.jar包中的ViewerControl.class。還有一點(diǎn)要特別注意:此時(shí)codebase指示的是WebEQApplet.jar包與公式顯示頁(yè)面的相對(duì)路徑,而不是與公式輸入頁(yè)面的相對(duì)路徑。在實(shí)際的整合應(yīng)用中,由于公式的顯示頁(yè)面不確定,這里的codebase最好為WebEQApplet.jar包與服務(wù)器根目錄之間的絕對(duì)路徑。這樣,不管公式的顯示頁(yè)面跳轉(zhuǎn)到何處,通過(guò)該codebase總能夠找到WebEQApplet.jar包來(lái)解析MathMl代碼,以正確地顯示公式。圖4是公式編輯頁(yè)面中輸入的公式在FCKeditor中的顯示。在編輯框中,還能對(duì)公式的位置、大小等再次進(jìn)行編輯,之后再在網(wǎng)絡(luò)上進(jìn)行傳輸。

3在線公式編輯器的應(yīng)用與改進(jìn)

在遠(yuǎn)程教學(xué)和網(wǎng)絡(luò)考試系統(tǒng)中,師生互動(dòng)討論、教師編輯試題、學(xué)生解答試題等已經(jīng)成為必不可少的關(guān)鍵環(huán)節(jié)。然而,目前的系統(tǒng)大都采用一般的文本編輯器來(lái)供用戶進(jìn)行文本編輯,這些編輯器可以完成對(duì)字符、圖片、動(dòng)畫(huà)等內(nèi)容的輸入和編輯工作,但對(duì)數(shù)理公式的支持卻非常有限,嚴(yán)重制約了數(shù)理學(xué)科開(kāi)展網(wǎng)絡(luò)教學(xué)和網(wǎng)絡(luò)考試。筆者以FCKeditor為平臺(tái)對(duì)在線公式編輯器作了一般的實(shí)現(xiàn)。在此,將在線公式編輯器應(yīng)用到網(wǎng)絡(luò)教學(xué)和考試系統(tǒng)中,較好地解決了在線輸入、編輯、傳輸和顯示數(shù)理公式的難題。這里以開(kāi)源教育軟件LAMS(學(xué)習(xí)活動(dòng)管理系統(tǒng))為例進(jìn)行講解。

LAMS是一個(gè)以活動(dòng)為中心的學(xué)習(xí)管理系統(tǒng),教師用戶可以設(shè)計(jì)學(xué)習(xí)序列來(lái)供學(xué)生用戶進(jìn)行學(xué)習(xí)。教師在設(shè)計(jì)學(xué)習(xí)序列、學(xué)生在回答教師提出的問(wèn)題以及在線討論等活動(dòng)中都需要在線地編輯文本。在原系統(tǒng)中,教師用戶和學(xué)生用戶分別使用FCKeditor和Textarea編輯器來(lái)編輯文本。這兩種編輯器可以對(duì)一般的文本進(jìn)行編輯,但不支持?jǐn)?shù)理公式的輸入和編輯,筆者將在線公式編輯器應(yīng)用到LAMS中成功地解決了這個(gè)問(wèn)題。

對(duì)教師用戶而言,由于原系統(tǒng)提供的編輯器是FCKeditor,本文設(shè)計(jì)的在線公式編輯器也是以FCKeditor為平臺(tái);此外,F(xiàn)CKeditor具有免安裝、移植性強(qiáng)的特點(diǎn),因此,直接用在線公式編輯器替換原系統(tǒng)安裝目錄下的FCKeditor即可。新的在線公式編輯器除了具有FCKeditor原有的所有功能外,還新增了公式輸入和編輯功能。教師用戶可以利用在線公式編輯器設(shè)計(jì)包括數(shù)理公式在內(nèi)的學(xué)習(xí)序列,然后保存在數(shù)據(jù)庫(kù)中,供學(xué)生用戶在客戶端學(xué)習(xí)。

對(duì)學(xué)生用戶而言,原系統(tǒng)提供的編輯器是Textarea,只能進(jìn)行最基本的文本編輯。為了擴(kuò)展編輯器的功能,先找到相應(yīng)的JSP頁(yè)面,然后用在線公式編輯器替換原來(lái)的Textarea編輯框。調(diào)用在線公式編輯器的代碼如下:

〈script type=\"text/javascript\" src=\"http://172.16.129.158:8090/

lams/fckeditor/fckeditor.js\"〉〈/script〉

〈script type=\"text/javascript\"〉

var oFCKeditor=new FCKeditor(′entryText′);

/*entryText為原來(lái)Textarea的標(biāo)志符*/

oFCKeditor.basePath= \"http://172.16.129.158:8090/lams//fckeditor/\"; //FCKeditor的路徑

oFCKeditor.height=200; /*編輯框的高度*/

oFCKeditor.toolbarSet=\"Default\";

/*工具欄的設(shè)置:Default或Basic*/

oFCKeditor.value=′content′; /*編輯框的默認(rèn)值*/

oFCKeditor.config[\"AutoDetectLanguage\"]= 1;

oFCKeditor.config[\"DefaultLanguage\"]= \"zh\";

oFCKeditor.create();

〈/script〉

這樣,學(xué)生用戶在學(xué)習(xí)序列時(shí)就可以非常方便地輸入包括數(shù)理公式在內(nèi)的內(nèi)容,完成與教師的交互。例如,圖5顯示的是學(xué)生在線回答教師的提問(wèn);圖6顯示的是學(xué)生(或教師)在論壇上發(fā)表觀點(diǎn);圖7顯示出了論壇上發(fā)表的各種觀點(diǎn),這些過(guò)程對(duì)數(shù)理公式都有很好的支持。由此可以看出,運(yùn)用本文提出的在線公式編輯器,不僅可以在線地輸入和編輯數(shù)理公式,而且可以實(shí)現(xiàn)公式的在線傳輸和顯示。

此外,還可以對(duì)在線公式編輯器作進(jìn)一步的改進(jìn),以滿足不同情景下的應(yīng)用需求。例如,要調(diào)整編輯器工具欄的外觀,可以對(duì)文件fckconfig.js進(jìn)行修改,這里設(shè)置FCKConfig.toolbarSets[\"Basic\"]=[[′FontSize′,′Bold′,′Expression′]];然后在調(diào)用在線公式編輯器時(shí)設(shè)置oFCKeditor.toolbarSet=\"Basic\";則在線公式編輯器只包含三個(gè)工具欄,即字體大小、加粗和插入公式。其外觀如圖8所示。

同理,要使用其他的工具欄,只需將其對(duì)應(yīng)的標(biāo)簽添加到toolbarSets中即可。另外,在網(wǎng)絡(luò)考試系統(tǒng)中,還可以根據(jù)頁(yè)面布局來(lái)調(diào)整編輯器的高度和寬度,以滿足填空題和解答題等不同題型解題的需要。

4結(jié)束語(yǔ)

隨著網(wǎng)絡(luò)教育的迅猛發(fā)展,在線輸入、編輯、傳輸和顯示數(shù)理公式已成為一種十分迫切的需求。本文首先介紹了支持國(guó)

際標(biāo)準(zhǔn)的數(shù)學(xué)標(biāo)記語(yǔ)言MathML以及全面支持MathML來(lái)輸入和顯示數(shù)理公式的WebEQ;在此基礎(chǔ)上提出了一種基于MathML的在線公式編輯器的解決方案,最后給出了具體實(shí)現(xiàn)與應(yīng)用。與一般采用的客戶端公式編輯器的解決方案相比,本文提出的解決方案除了具有客戶端公式編輯器操作簡(jiǎn)便的特點(diǎn)以外,其最大的優(yōu)勢(shì)在于能夠?qū)崿F(xiàn)在線操作,完全支持Web應(yīng)用,這是一般的客戶端公式編輯器所無(wú)法企及的;與一般離散地運(yùn)用WebEQ來(lái)分別完成公式的輸入、顯示等解決方案相比,本文的解決方案將多種應(yīng)用整合起來(lái)集成在一個(gè)模塊中,使公式的輸入、傳輸、顯示流線型地完成,而且這種整合是無(wú)縫的,完全屏蔽了其內(nèi)部實(shí)現(xiàn)細(xì)節(jié),使用者無(wú)須任何MathML知識(shí)即可方便地使用這種基于MathML的在線公式編輯器。

目前,該在線公式編輯器作為一個(gè)組件集成于LAMS和網(wǎng)絡(luò)考試系統(tǒng)中,成功地解決了系統(tǒng)中在線輸入、傳輸、顯示數(shù)理公式的難題,借助于FCKeditor平臺(tái),對(duì)公式的編輯也有一定的支持。此外,該公式編輯器操作簡(jiǎn)單、使用靈活、運(yùn)行穩(wěn)定,具有良好的移植性和擴(kuò)展性,支持各種通用瀏覽器,能夠?qū)崿F(xiàn)跨平臺(tái)工作,取得了較好的應(yīng)用價(jià)值。

參考文獻(xiàn):

[1]SMITH G G GRACKIN J ERGUSON D. Math and distance lear-ning threaded discussions[EB/OL].(2002)[2007-12-05].http://www.link-systems.com/ext_PNqUdT9CiqIAADkeBh4/GlennSmithEDMedia42902.pdf.

[2]歐陽(yáng)辰.數(shù)學(xué)公式與Web[J].計(jì)算機(jī)工程與應(yīng)用,2001,37(17):89-92.

[3]Mathematical markup language(MathML) version 2.0[EB/OL].2nd ed.(200-10-02)[2007-12-05].http://www.w3.org/TR/2003/REC-MathML2-20031021/.

[4]WATT S M LI Xue-hong. Examples of MathML[EB/OL].(1999)[2007-12-05].http://www.csd.uwo.ca/~watt/pub/reprints/1999-sigsam-mathml.pdf.

[5]ITOH K. Designing a learner-friendly formula- editor for computer-assisted learning[EB/OL].(2006-06-30)[2007-12-05].http://www.et.hs-wismar.de/ausland/japan/docs/C_Formula_editor.pdf .

[6]童寧江,古輝.WebEQ插件相關(guān)技術(shù)綜述[J].中國(guó)科技信息,2007,19(6):149-150.

[7]張濱. 實(shí)現(xiàn)Web下公式符號(hào)在線操作的可視化編輯器系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)科學(xué),2007,34(6):286-288.

[8]劉瓊?cè)A.采用標(biāo)記語(yǔ)言構(gòu)造數(shù)學(xué)公式編輯器的方法[J].計(jì)算機(jī)工程,2003,29(18): 82-83,121.

主站蜘蛛池模板: 亚洲天堂成人在线观看| 国产成人免费手机在线观看视频| 国产精品一区二区在线播放| 午夜电影在线观看国产1区| 国产另类视频| 国产网站黄| 亚洲一区无码在线| 国产第四页| 玖玖免费视频在线观看| 国产屁屁影院| 午夜久久影院| 97成人在线视频| 日韩欧美国产中文| 老司国产精品视频| 2022国产91精品久久久久久| 久久久久88色偷偷| 久久青草热| 无码福利视频| 国产哺乳奶水91在线播放| 夜夜拍夜夜爽| 午夜精品久久久久久久2023| 亚洲色欲色欲www在线观看| 午夜高清国产拍精品| 欧洲免费精品视频在线| 国产a v无码专区亚洲av| 免费一级毛片在线观看| 丰满人妻一区二区三区视频| 精品小视频在线观看| 国产免费怡红院视频| 国产自在线拍| 3p叠罗汉国产精品久久| www.av男人.com| 亚洲色偷偷偷鲁综合| 国产亚洲美日韩AV中文字幕无码成人 | 国产精品亚洲天堂| 国产福利在线免费观看| 亚洲男人在线| 国产日韩精品一区在线不卡| 97国产在线视频| 九九视频免费在线观看| 久操线在视频在线观看| 国产AV无码专区亚洲精品网站| 99久久精品免费观看国产| 国产乱子伦一区二区=| 日本亚洲国产一区二区三区| 亚洲人成网18禁| 亚洲黄色高清| 国产18在线播放| 精品丝袜美腿国产一区| 久久精品波多野结衣| 福利一区三区| 国产黄视频网站| 亚洲精品动漫| 亚洲伊人久久精品影院| 国产a在视频线精品视频下载| 青青草综合网| 精品综合久久久久久97| 18禁黄无遮挡免费动漫网站| 欧美一级在线| 亚洲人成网站日本片| 欧美综合成人| 久久香蕉国产线看观| 欧美69视频在线| 国产精品三级专区| 亚洲综合中文字幕国产精品欧美| 永久毛片在线播| 中文字幕资源站| 久久网欧美| 成人日韩欧美| 免费观看欧美性一级| 亚洲综合网在线观看| 亚洲天堂网在线视频| 欧美精品1区| 亚洲无码在线午夜电影| 久久国产精品夜色| 国产99视频精品免费视频7| 欧美特黄一免在线观看| 波多野衣结在线精品二区| 天天摸天天操免费播放小视频| 99久久亚洲精品影院| 草逼视频国产| 国产精品三级av及在线观看|