吳瑨
【摘 要】VBA是CorelDraw中集成的面向?qū)ο蟪绦蜷_發(fā)環(huán)境的子集。作業(yè)員可以應用VBA來編寫適合的宏,最大程度的運用計算機的自動化來完善制圖工作。本文主要通過CMYK色表的實現(xiàn)介紹了宏的編譯過程和運用技巧,還有通過工具設置宏的快捷啟動方式。
【關鍵詞】CorelDraw;VBA;地圖制圖
1 CorelDraw與VBA簡介
CorelDraw是近年來被廣泛應用在地圖制圖領域的矢量圖處理軟件,相對于傳統(tǒng)的地圖制圖軟件ArcGis、MapGis等,作為專業(yè)的圖形圖像軟件,在地圖的美觀性上,coreldraw有其無法比擬的優(yōu)越性,并且在出圖印刷上,coreldraw也有著其他軟件所不具備的優(yōu)勢,在菜單文件選項下,它有專門的“為彩色輸出做準備”一項。
但由于CorelDraw不是專業(yè)的地圖制圖軟件,所以在地圖制圖中,作業(yè)人員要綜合應用包括CorelDraw在內(nèi)的多種軟件協(xié)同配合才能制作出一幅精良的地圖。[1]
通常的過程是,應用ArcGis做初期的數(shù)據(jù)采集與庫管理工作,然后應用MapGis做初步的地圖成圖、注記標注等,最后用CorelDraw進行圖面美化與細節(jié)修飾等。
1998年corel公司做出戰(zhàn)略調(diào)整,在CorelDraw中集成了VBA,極大的改善了CorelDraw的拓展功能,使用戶可以二次開發(fā)出適合自己應用的宏。[2]
VBA(Visual Basic for Applications)是Microsoft Visual Basic(VB)面向?qū)ο蟪绦蜷_發(fā)環(huán)境的一個子集,是新一代標準宏語言。VBA使用Visual Basic Editor交互開發(fā)環(huán)境和VB語言操作應用程序的對象來增強應用程序的功能。
VBA為用戶提供了一套客戶化CorelDraw應用程序的圖形用戶界面,用戶可以對應用程序中的對象進行有效地操作和處理。VBA使用VB語言,由于它多用于集成到別的應用程序并對應用程序的函數(shù)進行客戶化,它才加上了“for Applications”,稱作VBA。[3]
VBA可以通過記錄和運行宏來自動化一系列CorelDraw的任務。更重要的是可以使用VB語言和應用程序內(nèi)部函數(shù)來開發(fā)更多的適合用戶需要的功能。
VBA繼承了VB的開發(fā)機制,具有與VB 相似的語言結(jié)構(gòu)。它們的集成開發(fā)環(huán)境也幾乎相同。
2 如何使用CorelDraw VBA
CorelDraw VBA支持用戶自行錄制宏。
如圖1所示,在菜單欄中,選擇工具——Visual Basic——錄制,命名宏并保存,開始錄制宏,用戶可以對文件進行處理,以達到自己預期的效果,然后停止錄制,需要的時候,選擇播放宏,播放錄制好的宏,可重復錄制的過程。
然而簡單的錄制宏,遠遠無法滿足復雜操作的需求,這時候需要應用Visual Basic編輯器來編輯適合的宏。
以CorelDraw X3為例,在編輯宏前,首先需要在文件夾C:\Program Files\Corel\CorelDRAW Graphics Suite 13\Draw\GMS下新建一個文件后綴為.gms的文件。
步驟為,新建一個文本文檔并命名,再將文本文檔的后綴.txt改為.gms,如果無法更改后綴,則需要先將工具——文件夾選項——查看下的“隱藏已知文件拓展名”選項前的對號勾掉。
然后再啟動CorelDraw,新建文件,或是打開一個已有文件,在菜單欄下選擇工具——Visual Basic——Visual Basic編輯器(快捷鍵Alt+f11),在工程——GlobalMacros窗口找到新建的GMS文件,便可以編輯宏了。
VBA繼承了VB的開發(fā)機制,與VB有相似的開發(fā)語言,他們的集成開發(fā)環(huán)境也幾乎相同,不同之處在于,VB可以生成獨立的應用程序,但VBA只能生成運行在宿主程序中的宏。[4]
Visual Basic編輯器界面與VB界面很相似,程序的編譯與調(diào)試過程也與VB類似,有一定編程基礎的人會很快熟悉并編制出適合自己的宏。
3 運用VBA編譯自動生成CMYK色表的宏
應用多種軟件精心制作出的地圖,最后一般會通過CorelDraw來出圖印刷或噴繪。
在CorelDraw菜單欄下,選擇文件——為彩色輸出中心做準備,點選搜集與文檔相關聯(lián)的所有文件,復制字體,生成PDF文件,便會生成一個專門用于印刷或噴繪的文件夾。
但在印刷或噴繪過程中,由于機器的型號、油墨的色值、紙張的選擇等多種因素,會影響打印質(zhì)量,使預先調(diào)配好的顏色并不能達到預期效果,尤其是出圖數(shù)量不大的情況下而采用的打印機噴繪,色差更為嚴重。[5]
由此可見,制作出一套專用于某次印刷工序或某一打印機的色表很有必要。
但一套色表,以CMYK色彩模式為例,即使色值密度選為50,需要繪制的色塊也要八十個,加上文本注釋、標題、橫縱坐標等,需要繪制的對象要超過一百六十個,況且,色表要用于調(diào)色配比,色值密度選為50過于稀疏,色值密度20的時候,對象則要超過兩千五百個。
CorelDraw VBA的優(yōu)勢在于通過程序編譯,可以讓計算機自動完成一系列有內(nèi)在規(guī)律、重復性高的工作。就像色表,如此繁多的對象,不借助CorelDraw的VBA工具去機輔繪制,會是一項工作量極大且難以完成的工作。
色表生成器的數(shù)學邏輯為,循環(huán)定位坐標,繪制矩形,為矩形賦值(顏色),并在對應矩形下生成文本標注。
程序釋義為,該VBA程序為一個循環(huán)程序,通過數(shù)值的增加,改變相關聯(lián)的屬性和賦值(矩形四角坐標、矩形顏色、文本內(nèi)容有內(nèi)在聯(lián)系),并在文件中生成正確的色表。
程序主要代碼與注釋如下:
文本框內(nèi)可輸入用戶需要的色值密度,本次輸入“100”僅作示例。
生成色表之后,可以在菜單欄下選擇文件——打印設置中點選“設置打印參數(shù)”,將色表打印出來,并根據(jù)該打印出的色表來配比地圖的顏色。
色表的制作不僅僅適用于地圖制圖領域,還可以應用于其他圖像設計領域,圖像設計必然會涉及到顏色配比,只要涉及到顏色配比,色表便有其不可或缺的獨到用處。
4 設置宏的快捷啟動項
當對CorelDraw VBA熟悉之后,作業(yè)員可能會用VBA編譯出經(jīng)常使用的宏,如果每次都通過菜單欄下的工具——Visual Basic——播放來選擇運行宏,會很繁瑣而不便。
可以通過如下的方法,將宏添加在菜單欄中,不需要每次都去窗口中尋找,方便快捷。
步驟如下:
打開菜單欄下的工具——自定義,點擊命令欄,新建一個命令欄“我的工具”,如圖4所示。
然后點擊命令,在下拉窗口中選擇宏,選中需要的宏,鼠標左鍵拖拽到新建的命令欄中,如圖5所示,確定即可。
以后每次需要運行該宏的時候,點擊命令欄中該宏的圖標便可啟動。
在命令窗口中,也可以對宏的常規(guī)、快捷鍵、外觀加以設計。
可以用這種方法添加多個宏的命令欄啟動項。
5 結(jié)束語
本文主要闡述了CorelDraw VBA在地圖制圖領域的應用,對于重復性高、有內(nèi)在規(guī)律的制圖工作,利用VBA編制的宏有很大的優(yōu)勢,可以極大的縮短工作時間、降低工作量。在繁復的制圖工作中,找到一些重復操作的技巧,究其邏輯性,根據(jù)其規(guī)律編譯出解決問題的宏,借助計算機實現(xiàn)自動化,會使地圖制圖工作變得更加準確高效。
【參考文獻】
[1]姚興海,姚磊.CorelDRAW地圖制圖[M].中國地圖出版社,2008,6:1-203.
[2]CorelDRAW/Corel DESIGNER VBA macros[OL].http://www.oberonplace.com/vba/drawmacros/index.htm.
[3]司連法.基于Coreldraw 10進行VBA二次開發(fā)和實例解析[OL].http://www.chinamap.com/CORE/Catalogue.htm.
[4]張建輝.Visual Basic從初學到精通[M].電子工業(yè)出版社,2010,6:1-517.
[5]Rick McCleary.CMYK 2.0:設計師色彩管理手冊[M].人民郵電出版社,2010,4:1-254.
[責任編輯:湯靜]
程序主要代碼與注釋如下:
文本框內(nèi)可輸入用戶需要的色值密度,本次輸入“100”僅作示例。
生成色表之后,可以在菜單欄下選擇文件——打印設置中點選“設置打印參數(shù)”,將色表打印出來,并根據(jù)該打印出的色表來配比地圖的顏色。
色表的制作不僅僅適用于地圖制圖領域,還可以應用于其他圖像設計領域,圖像設計必然會涉及到顏色配比,只要涉及到顏色配比,色表便有其不可或缺的獨到用處。
4 設置宏的快捷啟動項
當對CorelDraw VBA熟悉之后,作業(yè)員可能會用VBA編譯出經(jīng)常使用的宏,如果每次都通過菜單欄下的工具——Visual Basic——播放來選擇運行宏,會很繁瑣而不便。
可以通過如下的方法,將宏添加在菜單欄中,不需要每次都去窗口中尋找,方便快捷。
步驟如下:
打開菜單欄下的工具——自定義,點擊命令欄,新建一個命令欄“我的工具”,如圖4所示。
然后點擊命令,在下拉窗口中選擇宏,選中需要的宏,鼠標左鍵拖拽到新建的命令欄中,如圖5所示,確定即可。
以后每次需要運行該宏的時候,點擊命令欄中該宏的圖標便可啟動。
在命令窗口中,也可以對宏的常規(guī)、快捷鍵、外觀加以設計。
可以用這種方法添加多個宏的命令欄啟動項。
5 結(jié)束語
本文主要闡述了CorelDraw VBA在地圖制圖領域的應用,對于重復性高、有內(nèi)在規(guī)律的制圖工作,利用VBA編制的宏有很大的優(yōu)勢,可以極大的縮短工作時間、降低工作量。在繁復的制圖工作中,找到一些重復操作的技巧,究其邏輯性,根據(jù)其規(guī)律編譯出解決問題的宏,借助計算機實現(xiàn)自動化,會使地圖制圖工作變得更加準確高效。
【參考文獻】
[1]姚興海,姚磊.CorelDRAW地圖制圖[M].中國地圖出版社,2008,6:1-203.
[2]CorelDRAW/Corel DESIGNER VBA macros[OL].http://www.oberonplace.com/vba/drawmacros/index.htm.
[3]司連法.基于Coreldraw 10進行VBA二次開發(fā)和實例解析[OL].http://www.chinamap.com/CORE/Catalogue.htm.
[4]張建輝.Visual Basic從初學到精通[M].電子工業(yè)出版社,2010,6:1-517.
[5]Rick McCleary.CMYK 2.0:設計師色彩管理手冊[M].人民郵電出版社,2010,4:1-254.
[責任編輯:湯靜]
程序主要代碼與注釋如下:
文本框內(nèi)可輸入用戶需要的色值密度,本次輸入“100”僅作示例。
生成色表之后,可以在菜單欄下選擇文件——打印設置中點選“設置打印參數(shù)”,將色表打印出來,并根據(jù)該打印出的色表來配比地圖的顏色。
色表的制作不僅僅適用于地圖制圖領域,還可以應用于其他圖像設計領域,圖像設計必然會涉及到顏色配比,只要涉及到顏色配比,色表便有其不可或缺的獨到用處。
4 設置宏的快捷啟動項
當對CorelDraw VBA熟悉之后,作業(yè)員可能會用VBA編譯出經(jīng)常使用的宏,如果每次都通過菜單欄下的工具——Visual Basic——播放來選擇運行宏,會很繁瑣而不便。
可以通過如下的方法,將宏添加在菜單欄中,不需要每次都去窗口中尋找,方便快捷。
步驟如下:
打開菜單欄下的工具——自定義,點擊命令欄,新建一個命令欄“我的工具”,如圖4所示。
然后點擊命令,在下拉窗口中選擇宏,選中需要的宏,鼠標左鍵拖拽到新建的命令欄中,如圖5所示,確定即可。
以后每次需要運行該宏的時候,點擊命令欄中該宏的圖標便可啟動。
在命令窗口中,也可以對宏的常規(guī)、快捷鍵、外觀加以設計。
可以用這種方法添加多個宏的命令欄啟動項。
5 結(jié)束語
本文主要闡述了CorelDraw VBA在地圖制圖領域的應用,對于重復性高、有內(nèi)在規(guī)律的制圖工作,利用VBA編制的宏有很大的優(yōu)勢,可以極大的縮短工作時間、降低工作量。在繁復的制圖工作中,找到一些重復操作的技巧,究其邏輯性,根據(jù)其規(guī)律編譯出解決問題的宏,借助計算機實現(xiàn)自動化,會使地圖制圖工作變得更加準確高效。
【參考文獻】
[1]姚興海,姚磊.CorelDRAW地圖制圖[M].中國地圖出版社,2008,6:1-203.
[2]CorelDRAW/Corel DESIGNER VBA macros[OL].http://www.oberonplace.com/vba/drawmacros/index.htm.
[3]司連法.基于Coreldraw 10進行VBA二次開發(fā)和實例解析[OL].http://www.chinamap.com/CORE/Catalogue.htm.
[4]張建輝.Visual Basic從初學到精通[M].電子工業(yè)出版社,2010,6:1-517.
[5]Rick McCleary.CMYK 2.0:設計師色彩管理手冊[M].人民郵電出版社,2010,4:1-254.
[責任編輯:湯靜]