□ 江 婷 趙呈領(lǐng) 談國(guó)棟
PowerPoint課件文本信息提取研究*
□ 江 婷 趙呈領(lǐng) 談國(guó)棟
本文通過(guò)分析Microsoft Office PowerPoint課件結(jié)構(gòu),提出了一個(gè)專用于PowerPoint課件文本信息提取的對(duì)象模型,并在該模型的基礎(chǔ)上,利用Visual Basic語(yǔ)言開發(fā)了一個(gè)PowerPoint課件文本信息提取系統(tǒng)。通過(guò)該系統(tǒng)實(shí)現(xiàn)了對(duì)PowerPoint課件文本信息的有效提取,對(duì)于建立基于內(nèi)容的PowerPoint課件檢索模型提供了基礎(chǔ)。本文重點(diǎn)闡述了兩個(gè)關(guān)鍵技術(shù)環(huán)節(jié):PowerPoint課件文本信息對(duì)象模型的建立,PowerPoint課件文本信息提取算法的設(shè)計(jì)與實(shí)現(xiàn)。
PowerPoint課件;教學(xué)資源;特征分析;文本信息提取
Microsoft Office家族中PowerPoint幻燈片軟件作為最為常見的課件資源組織形式在教學(xué)中發(fā)揮了巨大的作用。它可以把各種信息、文字、聲音、動(dòng)畫、圖表、影片等合理地組織起來(lái),借用現(xiàn)代化的放映工具,方便地展示課程內(nèi)容,傳授知識(shí)。隨著信息技術(shù)在教育領(lǐng)域應(yīng)用的深入發(fā)展,數(shù)字化學(xué)習(xí)時(shí)代已悄然來(lái)到了我們身邊,在數(shù)字化學(xué)習(xí)這種新型的教學(xué)方式中,豐富的學(xué)習(xí)資源是其保持生機(jī)的基礎(chǔ)。Power-Point以其精美的配套模板,素材豐富的電子幻燈片,簡(jiǎn)單的操作一直以來(lái)在學(xué)習(xí)資源呈現(xiàn)中扮演著很重要的角色。
如何提取PowerPoint課件的內(nèi)容特征、建立基于內(nèi)容的PowerPoint課件檢索模型,從而提高PowerPoint課件檢索的效率和準(zhǔn)確性,一直是多媒體研究領(lǐng)域非常關(guān)注的問(wèn)題。PowerPoint課件所包含的媒體元素包括:文本、圖像、聲音、動(dòng)畫及視頻等,本文重點(diǎn)闡述對(duì)于文本這一媒體元素的信息提取。
通過(guò)觀察PowerPoint演示文稿的界面布局可知,在PowerPoint演示文稿的左側(cè)有“幻燈片/大綱”任務(wù)窗格。使用“大綱”選項(xiàng)卡查看時(shí),演示文稿的文本內(nèi)容按照標(biāo)題、正文的層次顯示出來(lái),即為該演示文稿的大綱,大綱部分體現(xiàn)了演示文稿的文本信息。對(duì)于演示文稿文本信息的提取,目前主要可利用PowerPoint自帶的“文件”→“發(fā)送”→“Microsoft Office Word”功能。雖然該方法可以實(shí)現(xiàn)文本信息的提取,但是它存在兩方面的問(wèn)題:首先是使用這種方法的前提是必須打開PowerPoint演示文稿,因此不適合于大規(guī)模PowerPoint課件資源的獲取與管理;其次提取的文本信息不全面,即只能提取“大綱”任務(wù)窗格中的內(nèi)容,而對(duì)于幻燈片中無(wú)法顯示在“大綱”任務(wù)窗格中的文本內(nèi)容則無(wú)法提取。那么,如何解決上述問(wèn)題呢?顯然,這個(gè)問(wèn)題的解決對(duì)于教學(xué)資源的準(zhǔn)確獲取和有效管理至關(guān)重要。本文擬從PowerPoint課件文本信息的對(duì)象模型建立、Power-Point課件文本信息提取的算法設(shè)計(jì)和PowerPoint課件文本信息提取的算法實(shí)現(xiàn)三個(gè)方面來(lái)闡述這個(gè)問(wèn)題。
為了能夠有效的提取PowerPoint課件中的文本信息,即:所有幻燈片的標(biāo)題和正文的文本,必須首先建立PowerPoint課件文本信息的對(duì)象模型,對(duì)象模型的建立是PowerPoint課件標(biāo)準(zhǔn)化處理的前提條件[1]。
由于PowerPoint課件內(nèi)容和組織方法各有不同,所以要建立PowerPoint課件對(duì)象模型就應(yīng)該從PowerPoint課件本身的邏輯結(jié)構(gòu)入手。只有清晰地描述了PowerPoint課件結(jié)構(gòu)才能獲得有利于文本信息提取的PowerPoint課件對(duì)象模型。
本文在參考Microsoft PowerPoint Visual Basic[2]的基礎(chǔ)上,結(jié)合本課題研究的需要提出了一個(gè)專用于PowerPoint課件文本信息的對(duì)象模型,如圖1所示:
從圖1可看出,該對(duì)象模型中的相關(guān)對(duì)象是一個(gè)層層嵌套的關(guān)系,這種嵌套關(guān)系與PowerPoint課件的組成結(jié)構(gòu)相呼應(yīng)。該模型中相關(guān)對(duì)象的解釋如下:
1.Presentation對(duì)象代表PowerPoint中當(dāng)前打開的一個(gè)演示文稿。
2.Slides集合包含演示文稿中的所有Slide對(duì)象,即當(dāng)前打開的演示文稿中所包含的所有幻燈片。Slides集合主要用來(lái)實(shí)現(xiàn)幻燈片的添加、刪除或者訪問(wèn)特定幻燈片。
3.Slide代表一個(gè)幻燈片,即當(dāng)前打開的演示文稿中所包含的所有幻燈片中的某一張。
4.Shapes對(duì)象為幻燈片中所有Shape對(duì)象
的集合。Shape對(duì)象代表繪圖層中的一個(gè)對(duì)象,例如自選圖形、任意多邊形、OLE對(duì)象或圖片。共有三個(gè)代表形狀的對(duì)象:Shapes集合,代表文檔中的所有形狀;ShapeRange集合,代表文檔中指定的部分形狀;Shape對(duì)象,代表文檔中的單個(gè)形狀。
5.TextFrame對(duì)象代表Shape對(duì)象中的文本框。包含文本框中的文本,還包含控制文本框?qū)R方式和縮進(jìn)方式的屬性和方法。該對(duì)象也是Power-Point課件文本信息提取的最主要的對(duì)象。
6.TextRange對(duì)象包含附加到形狀上的文本,以及用于操作文本的屬性和方法。例如,使用該對(duì)象的Text屬性可返回TextRange對(duì)象中的文本字符串。
上述對(duì)該模型中各對(duì)象的解釋為后續(xù)Power-Point課件文本信息提取的算法設(shè)計(jì)與實(shí)現(xiàn)提供了思路。在該算法的設(shè)計(jì)中,重點(diǎn)關(guān)注標(biāo)題與正文文本信息的提取,并且以反映課件邏輯結(jié)構(gòu)的方式將其呈現(xiàn)出來(lái)。
通過(guò)建立對(duì)象模型,確定在算法設(shè)計(jì)的過(guò)程中要進(jìn)行如下的判斷:本演示文稿包含的幻燈片數(shù)量,該結(jié)果使用Slides對(duì)象的Count屬性可以確定;當(dāng)前幻燈片中是否包含文本框,該結(jié)果通過(guò)Shapes對(duì)象的Count屬性可以得到;如果當(dāng)前幻燈片中有文本框,那么該文本框中的文本可能是本張幻燈片的標(biāo)題,也可能是本張幻燈片的正文內(nèi)容,該判斷通過(guò)形狀的編號(hào)可確定,而標(biāo)題和正文信息則可以借助TextRange對(duì)象的Text屬性獲取到。
解析的結(jié)果以XML文件形式存儲(chǔ)。XML[3]是EXtensible Markup Language的縮寫,是被設(shè)計(jì)用來(lái)描述數(shù)據(jù)的,它反映了數(shù)據(jù)之間的邏輯結(jié)構(gòu)。XML提供了訪問(wèn)信息的標(biāo)準(zhǔn)方法,使得各種類型的應(yīng)用程序和設(shè)備更容易使用、存儲(chǔ)、傳送和顯示數(shù)據(jù)。在網(wǎng)絡(luò)的發(fā)展過(guò)程中,XML已成為最普遍的數(shù)據(jù)操縱和數(shù)據(jù)傳輸?shù)墓ぞ摺2捎肵ML這樣一種通用的數(shù)據(jù)交換格式,為對(duì)課件內(nèi)容進(jìn)行進(jìn)一步的分析處理,如轉(zhuǎn)換為HTML網(wǎng)頁(yè)格式或者存入數(shù)據(jù)庫(kù),提供了可能性,從而可以使PowerPoint課件適應(yīng)數(shù)字化學(xué)習(xí)資源“智能化、標(biāo)準(zhǔn)化、開放式”的要求。同時(shí),也為本課題后期的研究,即:建立基于內(nèi)容的Power-Point課件檢索模型打下了基礎(chǔ)。
根據(jù)需要,作者在XML文件中自定義了4個(gè)標(biāo)簽:演示文稿標(biāo)簽、幻燈片標(biāo)簽、標(biāo)題標(biāo)簽和正文標(biāo)簽,其結(jié)構(gòu)如圖2所示。其中,幻燈片標(biāo)簽的屬性“序號(hào)”標(biāo)識(shí)了該幻燈片在此演示文稿中的編號(hào)。其取值n為從1開始的整數(shù)。
依據(jù)上述設(shè)計(jì)思想,設(shè)計(jì)文本信息的提取算法,其算法流程如圖3所示。對(duì)PowerPoint課件文本信息提取算法的解析如下:
1.首先使用CreateObject()方法創(chuàng)建Power-Point Application應(yīng)用程序?qū)ο?,用該?duì)象打開一個(gè)已存在的演示文稿。
2.通過(guò)ActivePresentation.Slides()方法獲取當(dāng)前演示文稿的所有幻燈片。
圖2 PowerPoint文件解析后的格式
3.對(duì)演示文稿中的每張幻燈片進(jìn)行分析,判斷該張幻燈片中是否包含文本框,如果是,接下來(lái)執(zhí)行4;如果否,則該張幻燈片的標(biāo)題和正文內(nèi)容都為空。
4.通過(guò)ActivePresentation.Slides().Shapes. Count獲取該張幻燈片中文本框的數(shù)量,判斷文本框的數(shù)量是否大于或等于1,如果是,接下來(lái)執(zhí)行5;如果否,則該張幻燈片的標(biāo)題和正文內(nèi)容都為空。
5.接著判斷文本框的數(shù)量是否等于1,如果是,則該文本框中的信息即為標(biāo)題內(nèi)容;如果否,則第一個(gè)文本框中的文本即為標(biāo)題內(nèi)容,其余文本框中的文本為正文內(nèi)容。
6.將讀取指針指向下一張幻燈片。重新從步驟3開始執(zhí)行。
7.將獲取到的文本信息以XML的形式寫入磁盤文件并輸出到顯示界面。
該算法遵循PowerPoint課件的結(jié)構(gòu)特征,根據(jù)需要通過(guò)層層遞進(jìn),從外向內(nèi)的方式對(duì)PowerPoint演示文稿進(jìn)行逐層分析,并且設(shè)置條件判斷,即:使用幻燈片中形狀的編號(hào)作為判斷依據(jù),每張幻燈片中的第一個(gè)形狀為標(biāo)題所在的位置,而其余的形狀為正文所在的位置。這樣,使得該算法具有一定的智能性,不是將所獲取的文本雜亂無(wú)章的堆砌,而是按照標(biāo)題和正文的格式將其分別提取。
按照上面所設(shè)計(jì)的算法,筆者使用Visual Basic語(yǔ)言[4]開發(fā)了一個(gè)PowerPoint課件文本信息提取系統(tǒng),系統(tǒng)的工作界面如圖4所示。該系統(tǒng)的主要功能是提取PowerPoint課件中的文本信息,然后將提取到的文本信息生成基于XML標(biāo)準(zhǔn)的描述文檔,XML文檔的節(jié)點(diǎn)組織模式反映了課件的邏輯結(jié)構(gòu)。
該系統(tǒng)的核心技術(shù)在于對(duì)PowerPoint課件標(biāo)題和正文信息的智能化判斷及提取,其主要實(shí)現(xiàn)過(guò)程如下:
1.課件標(biāo)題信息的判斷及提取
num=ActivePresentation.Slides.Count //獲取演示文稿中幻燈片的總數(shù)
For j=1 To num
num1=ActivePresentation.Slides(j).Shapes. Count//獲取當(dāng)前幻燈片中文本框的數(shù)量
If num1<>0 And ActivePresentation.Slides (j).Shapes(1).HasTextFrameAndActivePresentation.Slides(j).Shapes(1).TextFrame.HasText Then
s=ActivePresentation.Slides(j).Shapes(1). TextFrame.TextRange.TrimText().Text
End If//將第一個(gè)文本框中的文本提取為標(biāo)題信息
2.課件正文信息的判斷及提取
If num1>1 Then
For i=2 To num1
If ActivePresentation.Slides(j).Shapes(i).Has-TextFrameAndActivePresentation.Slides(j). Shapes(i).TextFrame.HasText Then
s=s+ActivePresentation.Slides(j).Shapes(i).TextFrame.TextRange.TrimText().Text
End If
Next i
End If//將其余文本框中的文本提取為正文信息
經(jīng)過(guò)一致性測(cè)試,系統(tǒng)分析生成的描述文檔基本符合要求。如圖4所示,在路徑文本框中輸入所要分析的PowerPoint課件的地址,解析完成后,該系統(tǒng)將提取到的文本信息,生成反映課件邏輯結(jié)構(gòu)的基于XML標(biāo)準(zhǔn)的描述文檔,同時(shí)將文檔輸出到顯示界面。
當(dāng)然,PowerPoint課件文本信息提取系統(tǒng)也存在一定的局限性,它要求課件制作者遵循Power-Point課件的模板所提供的結(jié)構(gòu),在指定的文本框中填寫相應(yīng)的內(nèi)容,否則在解析標(biāo)題和正文時(shí)會(huì)出現(xiàn)混亂。盡管如此,隨著相關(guān)系統(tǒng)的開發(fā)與完善,PowerPoint課件資源的標(biāo)準(zhǔn)化問(wèn)題會(huì)逐步得到解決,而局限本系統(tǒng)的這個(gè)問(wèn)題也將逐漸消失。隨著該系統(tǒng)的進(jìn)一步開發(fā)完善,它將會(huì)成為集圖片、視頻、動(dòng)畫、聲音等多種媒體元素特征提取為一體的綜合性系統(tǒng),有理由相信該系統(tǒng)將會(huì)為PowerPoint課件的有效獲取和管理帶來(lái)質(zhì)的飛躍。
基于內(nèi)容的PowerPoint課件特征分析將會(huì)為教育資源的獲取和管理開辟新的天地,使教育資源更好地服務(wù)于數(shù)字化學(xué)習(xí)。PowerPoint課件文本信息提取的實(shí)現(xiàn),為分析課件的整個(gè)框架以及文本信息提供了方便,更為后期建立基于內(nèi)容的PowerPoint課件檢索模型打下了堅(jiān)實(shí)的基礎(chǔ)。隨著研究的深入,PowerPoint課件的內(nèi)容特征提取還將包括對(duì)演示文稿對(duì)象內(nèi)部的圖像、視頻、音頻、動(dòng)畫以及各媒體元素所使用的特效等信息進(jìn)行提取,旨在通過(guò)對(duì)演示文稿對(duì)象中各種媒體元素特征進(jìn)行分析,從而更好地服務(wù)于教育資源的獲取和管理。
[1]毛剛,劉清堂,胥曉歡.PowerPoint課件的標(biāo)準(zhǔn)化處理研究[J].中國(guó)教育信息化(高教職教),2008,(21):79-81.
[2]Microsoft PowerPoint Visual Basic參考[EB/OL].http://download. csdn.net/source/253362.
[3]Young,M.J.XML學(xué)習(xí)指南[M].北京:機(jī)械工業(yè)出版社,2001.
[4]龔沛曾,楊志強(qiáng),陸慰民.Visual Basic程序設(shè)計(jì)教程(第3版)[M].北京:高等教育出版社,2007.
責(zé)任編輯 柯南
G40-057
B
1009—458x(2011)02—0069—04
*本文系國(guó)家社會(huì)科學(xué)基金“十一五”規(guī)劃2010年度教育學(xué)一般課題:“基于混合學(xué)習(xí)的免費(fèi)師范生“4+2”教育技術(shù)能力培養(yǎng)創(chuàng)新研究”(課題編號(hào):BCA100024)的部分研究成果。
2010-11-15
江婷;趙呈領(lǐng)。華中師范大學(xué)信息技術(shù)系(430079)。
談國(guó)棟,華中師范大學(xué)外國(guó)語(yǔ)學(xué)院(430079)。