我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > CAD新聞

基于Word的圖文檔管理方法

時間:2011-02-26 19:30:58 來源:

在工程實踐中大量用到多種格式的圖文檔,如DWG、DXF格式的圖形文件,BMP、TIF、JPG格式的圖像文件,TXT.DOC格式的文本文件,STEP文件及語音文檔等。這此文檔被按照一定的分類編碼規(guī)則歸類,并以分類編碼號命名。為了對它們實施管理,本文將介紹在Visual Basic環(huán)境下開發(fā)的一個應(yīng)用程序,通過該程序能自動生成Word格式管理文檔,并實現(xiàn)圖文檔的管理。

要實現(xiàn)對Word文檔的自動操作,可以用自動化工具Word內(nèi)來完成,但Word內(nèi)必須在Word內(nèi)使用而不適用于應(yīng)用系統(tǒng)的開發(fā)。而采用 ActiveX部件技術(shù)可以實現(xiàn)在VB中控制Word自動完成文檔操作。其方法是先將圖文檔按編碼順序依次插入到Word文檔中并標注圖號,再生成圖檔目錄。通過這種自動生成的管理文檔可以實現(xiàn)批量圖文檔的管理,且通過圖號目錄可以方便地查找并定位到所需文檔。雙擊所需文檔后,該文檔被激活。

這種圖文檔管理方法簡單實用。對于圖像文件,可以方便地實現(xiàn)查找、定位、預(yù)覽和編輯。利用Word的打印功能,還可節(jié)約批量圖檔打印的時間。下而將詳細介紹相關(guān)原理與技術(shù)。

1在VB中操作Word文檔

1.1 ActiveX部件技術(shù)概述

ActiveX部件是一段可重復使用的編程代碼和數(shù)據(jù),它由ActiveX技術(shù)所創(chuàng)建的一個或多個對象組成。VB應(yīng)用程序可以使用現(xiàn)有的部件,如包含在Microsoft Office應(yīng)用程序中的部件、各家制造廠商所提供的代碼部件、ActiveX文檔或ActiveX控件中含有的部件等。此外,它還可以自行開發(fā)ActiveX控件。

ActiveX部件可以將現(xiàn)存的、完善的應(yīng)用程序片段有效地結(jié)合在一起。使用ActiveX部件,可以在自己的應(yīng)用程序中利用很多其他Windows應(yīng)用程序所提供的功能,如Microsoft Excel、Microsoft Word和Microsoft Access中都提供了能通過VB應(yīng)用程序操縱的對象。這樣,開發(fā)人員就可以在自己的應(yīng)用程序中使用Excel的電子數(shù)據(jù)表、Word文檔或者Acces、數(shù)據(jù)庫的屬性、方法和事件。

1.2 VB操作Word文檔的方法

使用ActiveX部件提供的對象與操作其他對象的方法十分相似。在VB應(yīng)用程序,在使用部件對象之前,先要在工程中添加對該部件的引用,并聲明對象變量,將對象引用賦予該變量,然后編寫使用對象的方法、屬性與事件的代碼。在VB操作Word文檔的方法如下。

(1)添加對部件的引用。從"工程"菜單中選擇"引用",在"引用"對話框中添加對" Microsoft Word 8.0 Object Library"的引用·

(2)在程序聲明Word對象變量,并將對象引用賦予該變量,方法如下。

Dim wdAppl As Word.Application 為Word應(yīng)用程序聲明對象變量。

Set wdAppl=New Word Application 將對象引用賦值給該變量。

上而的對象引用中的對象變量被聲明為一個特定類的變量wdAppl,對象引用是事前綁定的。如果對象引用的對象變量被聲明為一般的Object類的變量,則對象引用是事后綁定。例如也可以將對于Word對象的引用賦予下列Object類的變量wdApp2

Dim wdApp2 As Object事后綁定

Set wdApp2=Create0bject("Word.Application")

通常事后綁定變量wdApp2的代碼比使用事前綁定變量wdApp 1的代碼執(zhí)行得慢。這是由于當聲明一個變量As Object時,VB在編譯期間不能確定該變量含有的對象引用的性質(zhì)。在這種情況下,VB必須使用事后綁定,即VB在運行期間,才能確定對象是否具有代碼中要使用的屬性和方法。

(3)使用Word對象的屬性和方法。將Word對象引用賦予對象變量后,即可用該變量操作對象的屬性和方法。使用Word部件對象的屬性和方法與普通對象沒有任何差別。

部件提供的對象一般是分層次的。Office應(yīng)用程序和其他ActiveX部件在它們的對象層次中提供了一個頂層外部可創(chuàng)建對象,即提供了對該層次中其他對象的訪問以及對整個應(yīng)用程序起作用的方法和屬性。

例如,每個Microsoft Office應(yīng)用程序提供一個頂層Application對象,用這些變量可以訪問每個應(yīng)用程序中的從屬對象,以及這此對象的屬性和方法。例如,用Application 對象的子對象Selection的TypeParagraph方法實現(xiàn)Word文檔分段操作。代碼為:

wdApp 1.Selection.Typelaragraph

在程序開發(fā),I,若要使用Word對象的屬性和方法來完成對Word文檔的某種自動操作,一個方便的方法是利用Word 中的內(nèi)錄制器來錄制相應(yīng)的手動Word文檔的操作過程,錄制器可以自動創(chuàng)建內(nèi)。Word先將內(nèi)錄制為一系列用VBA(Visual Basic for Applications)表示的宏代碼。然后用戶可以在"Visual Basic編輯器",將錄制好的宏代碼拷貝到VB應(yīng)用程序中由于VBA是VB的一個子集,因此只需稍作修改,就能在VB程序中實現(xiàn)對Word文檔的自動操作。但是,不是所有的手動操作都能被錄制,內(nèi)錄制器不能錄制鼠標在文檔窗口的移動。例如,不能用鼠標移動插入點或通過單擊、拖動等操作來選定、復制或移動項目。要錄制該類操作,必須使用快捷鍵。

在本程中,因為涉及到對文件火、圖文檔的操作,因此使用了SFO對象模型.該模型提供了基于對象的上具來處理文件火和文件。對象的屬性、方法和事件之前,要對其進行引用。引用方法是選擇"工程"菜單的"引用"命令,再選擇"Microsoft Scripting Runtime"復選框。創(chuàng)建FSO對象可以通過將一個變量聲明為FileSystemObject對象類型來完成,例如:

Dim fso As New FileSystem

2程序設(shè)計與實現(xiàn)

2.1實施圖文檔管理的步驟

(1)對圖文檔進行分類編碼

文檔的分類編碼有利于對其進行管理。在本系統(tǒng)文檔的分類編碼按照2段分類碼進行。第一段為3位類別碼,第二段為3位識別碼。類別碼用于對文檔類別進行分類,同一類別的文檔用識別碼進行區(qū)分,因此用類別碼和識別碼就可惟一標識一個文檔。文檔的文件名前綴就用它的類別碼和識別碼進行命名。如某個文檔的分類碼為22_275,其220為它的類別碼,275為它的識別碼,則它的文件名前綴就是220_275.

(2)自動生成Word管理文檔

在程序中可以創(chuàng)建圖文檔管理目錄,將需要管理的圖文檔添加到管理目錄內(nèi),或從管理目錄,I刪去圖文檔,然后可以根據(jù)管理目錄內(nèi)的圖文檔自動生成Word管理文檔。管理文檔生成的過程是:首先啟動Word程序,可事先選擇前臺運行還是后臺運行;接著創(chuàng)建新的Word文檔,將圖文檔按編碼順序依次插入到Word文檔,并標注圖號,圖號與編碼號一致;然后在Word文檔的前部生成圖號目錄;最后保存Word文檔,關(guān)閉Word .

通過這種自動生成的管理文檔可以實現(xiàn)批量圖文檔的管理。通過圖號目錄可以方便地查找并定位到所需文檔,雙擊所需文檔后,可以激活并編輯該文檔。

2.2圖文檔的插入方法

將圖文檔插入到Word文檔的方法可以總結(jié)為以下幾種:插入法、嵌入法和鏈接法。在Word管理文檔的自動生成過程中采用不同的圖文檔插入方法所產(chǎn)生的效果是不同的。

(1)插入法。與另外2種方法不同的是,該方法僅適用于圖像文件。一幅13.6*6.7cm、24色、JYG格式的圖片A用插入法插入到Word文檔后為36KB。用這種方法將圖像文件插入到Word文檔后,圖片可復原,但復原效果不理想。插入法是通過在VB程序中用Selection對象的子對象lnlineShapes的AddPicture方法來實現(xiàn)。

(2)嵌入法。常見的圖文檔都能用該方法插入到Word文檔。圖片A用嵌入法插入到Word文檔后為4061KB ,圖片可復原。雖嵌入后的文件字數(shù)大,但是其最大好處是,可以在Word文件中雙擊畫而,迅速激活圖文檔直接進行瀏覽或編輯。對于批量打印圖像文件并有較高清晰度要求時,可采用這種插入方法。嵌入法的操作在VB程序,用Selection對象的子對象lnlineShapes的AddOLEObject方法來實現(xiàn).

(3)鏈接法。該方法與嵌入法的區(qū)別在于數(shù)據(jù)的存放位置及將其插入Word文檔后的更新方式不同。在鏈接法中,對源文件的修改將反映到Word文檔中。圖片A用鏈接法插入到Word文檔后,為394KB,圖片不可復原。對于像PDF, DOC等非圖像文件或較大的音像文件的管理,可以采用這種插入方法,并將文件以圖標的形式顯示于Word文檔.插入Word文檔的只是代表文件內(nèi)容的圖標。這樣做可以使生成的Word文檔所占空間較小。鏈接法的操作在VB程序中也用Selection對象的子對象lnlineShapes的AddOLE0dject方法來實現(xiàn),其參數(shù)Link1olile設(shè)為True。若要以圖標形式插入,參數(shù)DisplayAsleon設(shè)為True。

3 總結(jié)

本文介紹了一種通過VB應(yīng)用程序自動生成Word文檔來管理圖文檔的方法。該方法借助于宏錄制器錄制手動操作后生成宏代碼,簡單實用。用VB操作Excel,Access等其他Office應(yīng)用程序時也可采用這種方法。這種在程序中操作Office工具的應(yīng)用十分廣泛。事實上,在用Delphi實現(xiàn)相似操作時,也可以借助于宏代碼,但需要將VBA表示的宏代碼轉(zhuǎn)換成符合Pascal語法的形式。