亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種測(cè)繪成果報(bào)告高效定制方法

        2021-07-25 10:04:22吳小龍盧尚龍李旺民
        地理空間信息 2021年7期
        關(guān)鍵詞:單元格開(kāi)源表格

        吳小龍,盧尚龍*,李旺民

        (1.珠海市測(cè)繪院,廣東 珠海 519000)

        城市測(cè)繪即在城市開(kāi)展的測(cè)繪活動(dòng),主要任務(wù)是為城市的規(guī)劃、建設(shè)與管理提供測(cè)繪地理信息支撐保障服務(wù),主要內(nèi)容包括平面和高程控制測(cè)量、工程測(cè)量、土地審批測(cè)繪、規(guī)劃監(jiān)督測(cè)繪、人防竣工驗(yàn)收測(cè)量、不動(dòng)產(chǎn)權(quán)籍調(diào)查以及4D產(chǎn)品生產(chǎn)等。近年來(lái),隨著城市規(guī)劃建設(shè)管理需求的提升和測(cè)繪地理信息技術(shù)的發(fā)展,城市測(cè)繪的工作內(nèi)容、服務(wù)領(lǐng)域和成果形式不斷擴(kuò)大,涉及大量專(zhuān)題測(cè)繪成果報(bào)告的定制輸出。傳統(tǒng)方法一般基于VBA開(kāi)發(fā)成果輸出功能,在一定程度上提高了作業(yè)效率;而在實(shí)際生產(chǎn)中,該方法存在嚴(yán)重依賴(lài)Office版本、代碼維護(hù)困難、效率偏低等問(wèn)題。

        1 傳統(tǒng)VBA方法遇到的問(wèn)題

        VBA是捆綁在Microsoft Application應(yīng)用程序上的一個(gè)簡(jiǎn)單的Visual Basic程序語(yǔ)言,其特點(diǎn)是將VB語(yǔ)言與應(yīng)用對(duì)象模型結(jié)合起來(lái),以編程的方式來(lái)處理Word/Excel中的各種對(duì)象。測(cè)繪成果報(bào)告大多為Word或Excel格式,一般采用VBA開(kāi)發(fā)成果定制功能,面臨的問(wèn)題為:

        1)基于VBA方式操作Excel、Word,需在服務(wù)器或客戶(hù)端安裝Oきce,并及時(shí)更新以防漏洞,特別是服務(wù)器端,若在導(dǎo)出過(guò)程中出問(wèn)題則可能導(dǎo)致服務(wù)器宕機(jī)。

        2)Excel能自動(dòng)分析字段類(lèi)型,但對(duì)于文本、日期等字段類(lèi)型容易出現(xiàn)強(qiáng)制格式化為數(shù)字的情況,造成信息表達(dá)錯(cuò)誤,如字段內(nèi)容以“-”或“=”開(kāi)頭,Excel將其當(dāng)成公式,產(chǎn)生錯(cuò)誤。

        3)VBA的各個(gè)版本間存在兼容性問(wèn)題,會(huì)出現(xiàn)成果報(bào)告格式錯(cuò)亂的情況。

        4)VBA效率相對(duì)較低,尤其是在數(shù)據(jù)量較大時(shí),邊寫(xiě)數(shù)據(jù)邊刷新的方式,將大大降低輸出效率。

        為了解決上述問(wèn)題,本文利用NPOI開(kāi)源庫(kù)替代Excel VBA處理Excel文檔,利用DocX開(kāi)源庫(kù)替代Word VBA處理Word文檔,以實(shí)現(xiàn)測(cè)繪成果的高效定制。

        2 基于NPOI的Excel報(bào)表定制

        POI是一套利用Java編寫(xiě)的開(kāi)源庫(kù),能幫助開(kāi)發(fā)者在沒(méi)有安裝微軟Office的情況下讀寫(xiě)Word/Excel文檔。NPOI,即POI的.NET版本,是一個(gè)開(kāi)源的C#讀寫(xiě)Excel、Word等微軟OLE2組件文檔的項(xiàng)目。NPOI的特點(diǎn)為:①采用Apache 2.0許可證,可免費(fèi)用于任何商業(yè)或非商業(yè)項(xiàng)目;②讀寫(xiě)速度快、穩(wěn)定性好,采用面向接口的設(shè)計(jì)架構(gòu),比Office PIA的API更加方便、更人性化;③完美支持Excel,包含了大部分Excel的特性(單元格樣式、數(shù)據(jù)格式、公式等);④無(wú)需安裝Office,可避免版權(quán)以及Office各版本間的兼容性問(wèn)題。

        目前NPOI包含若干個(gè)Assembly,作用各有不同,開(kāi)發(fā)人員可按需加載相應(yīng)的 Assembly。例如,NPOI.Util為基礎(chǔ)輔助庫(kù),NPOI.POIFS為OLE2格式讀寫(xiě)庫(kù),NPOI.DDF為Microsoft Drawing格式讀寫(xiě)庫(kù),NPOI.SS為Excel公式計(jì)算庫(kù),NPOI.HPSF為OLE2的Summary Information和Document Summary Information屬性讀寫(xiě)庫(kù),NPOI.HSSF為Excel BIFF格式讀寫(xiě)庫(kù)。

        NPOI采用HSSFWorkbook類(lèi)來(lái)處理xls,采用XSSFWorkbook類(lèi)來(lái)處理xlsx,它們都繼承接口IWorkbook,因此可通過(guò)IWorkbook統(tǒng)一處理xls和xlsx格式的文件。一個(gè)Excel文件即一個(gè)Workbook對(duì)象,可包括多個(gè)Sheet表對(duì)象,每個(gè)Sheet表又包括了大量單元格對(duì)象,單元格是Excel中最有意義的對(duì)象。Excel底層中的單元格具有不同類(lèi)型,如數(shù)字(NumberRecord)、空單元格(BlankRecord)、文本(LabelSSTRecord)等,設(shè)置單元格時(shí)需告訴NPOI創(chuàng)建單元格的類(lèi)型;同樣在讀取時(shí)需根據(jù)格式的不同設(shè)置對(duì)象的不同類(lèi)型,方便后期的數(shù)據(jù)處理。NPOI中SetCellValue、GetCellValue函數(shù)分別用于設(shè)置/獲取單元格的值。通常是打開(kāi)已有的模版文件,將數(shù)據(jù)填入指定Sheet的單元格,并根據(jù)需要對(duì)單元格的格式進(jìn)行處理(包括行高、列寬、字體、單元格合并等)即可。

        3 基于DocX的Word報(bào)表定制

        早期的文檔格式(如doc、xls、ppt)基于OLE2標(biāo)準(zhǔn),OLE2是二進(jìn)制格式,文檔以二進(jìn)制的形式對(duì)不同的數(shù)據(jù)流進(jìn)行存儲(chǔ)。OpenXML標(biāo)準(zhǔn)是微軟新一代辦公軟件文檔格式標(biāo)準(zhǔn),是由微軟開(kāi)發(fā)的一種以XML為基礎(chǔ)并以ZIP格式壓縮的電子文件規(guī)范,支持docx文檔、xlsx電子表單文檔、pptx幻燈片文檔等,2007以及更高版本的Office文檔均基于該標(biāo)準(zhǔn)。OpenXML復(fù)合文檔將數(shù)據(jù)流以XML格式分別描述,通過(guò)ZIP壓縮文件形式合并到一起。微軟推出了Open XML SDK,專(zhuān)門(mén)幫助.NET語(yǔ)言與Office實(shí)現(xiàn)互操作,這也成了COM組件外的新選擇,但它的安裝包有100 M,對(duì)很多部署來(lái)說(shuō),難度不小。

        DocX是一個(gè)在無(wú)需安裝Word的情況下對(duì)Word進(jìn)行操作的開(kāi)源輕量級(jí).NET組件,可輕便操作Word,有利于減輕開(kāi)發(fā)負(fù)擔(dān),提升程序效率。采用DocX需要.NET Framework4.0和VS2010或更高版本。DocX的特點(diǎn)為:①代碼開(kāi)源,有免費(fèi)版與收費(fèi)版,免費(fèi)版功能可滿(mǎn)足大多數(shù)測(cè)繪成果報(bào)告的定制需求;②支持在文件中插入、刪除和替代文本,支持所有的文本格式,如字體、下劃線、高亮等;③支持插入圖片、超鏈接、表格、頁(yè)眉頁(yè)腳以及自定義屬性等;④支持類(lèi)似JQuery的鏈?zhǔn)綄?xiě)法,很方便編程開(kāi)發(fā);⑤無(wú)需安裝Office,可避免版權(quán)以及Office各版本間的兼容性問(wèn)題。

        DocX中一個(gè)Word文檔的主要對(duì)象包括文檔(Document)、段落(Paragraph)、書(shū)簽(BookMark)、圖像(Image)、表格(Table)和自定義屬性(CustomProperty)等。測(cè)繪成果報(bào)告通常有一定的模版,利用模版文件可使Word成果報(bào)告的定制開(kāi)發(fā)更加簡(jiǎn)單。一般來(lái)說(shuō),Word報(bào)表定制主要包括文檔打開(kāi)(DocX.Load方法)、文本替換(DocX.ReplaceText方法)、表格填寫(xiě)(Table.Rows.Cells.Paragraphs.InsertText方法)、圖像插入(InsertPicture方法)、文檔合并(DocX.InsertDocument)、文檔保存(DocX.Save)等工作。

        4 測(cè)試與比對(duì)

        城市測(cè)繪中不動(dòng)產(chǎn)權(quán)籍調(diào)查、人防竣工驗(yàn)收測(cè)量、規(guī)劃監(jiān)督測(cè)繪的成果報(bào)告包括大量的面積信息填寫(xiě)和分層分戶(hù)圖輸出;而土地勘測(cè)定界測(cè)繪的成果報(bào)告則包括大量界址點(diǎn)和圖斑信息的輸出。一般通過(guò)定制成果模版的方式,將信息或?qū)n}圖片寫(xiě)到模版的指定位置,因此表格數(shù)據(jù)填寫(xiě)、圖片插入是影響成果報(bào)告輸出效率的關(guān)鍵因素。本文基于VBA和.NET分別開(kāi)發(fā)了測(cè)試程序,以驗(yàn)證兩種方法的效率和用戶(hù)體驗(yàn)效果。測(cè)試程序界面如圖1所示。

        圖1 工程測(cè)量測(cè)試程序

        測(cè)試內(nèi)容包括影響成果報(bào)告定制效率的表格數(shù)據(jù)填寫(xiě)、圖片插入兩個(gè)方面,測(cè)試數(shù)據(jù)為橫琴新區(qū)某項(xiàng)目圖斑1 020個(gè)節(jié)點(diǎn)坐標(biāo)成果,以文本方式存儲(chǔ);規(guī)劃條件核實(shí)分層平面圖100張,每張約1 M,為WMF文件。效率對(duì)比如表1、2所示,可以看出,對(duì)于Word成果報(bào)告的定制,相較于VBA,本文方法在表格填寫(xiě)方面效率提升10倍以上,但圖片插入隨著文件的增大而效率有所降低,總體來(lái)說(shuō),本文方法效率提升了兩倍以上;對(duì)于Excel成果報(bào)告的定制,相較于VBA,本文方法在表格填寫(xiě)方面效率提升了約28倍,圖片插入效率提升了約27倍,總體來(lái)說(shuō),本文方法效率提升了約27倍;對(duì)于用戶(hù)體驗(yàn)方面,VBA運(yùn)行時(shí)若用戶(hù)進(jìn)行其他操作則容易導(dǎo)致結(jié)果出錯(cuò),而本文方法全程后臺(tái)運(yùn)行,不影響用戶(hù)其他操作,用戶(hù)體驗(yàn)更好。

        表1 Word效率對(duì)比分析/ms

        表2 Excel效率對(duì)比分析/ms

        5 結(jié) 語(yǔ)

        本文采用NPOI和DocX開(kāi)源庫(kù)實(shí)現(xiàn)了不依賴(lài)Microsoft Oきce軟件的測(cè)繪成果報(bào)告高效定制,解決了傳統(tǒng)VBA方法存在的兼容性差、效率偏低等問(wèn)題,且代碼簡(jiǎn)潔、便于維護(hù)。此外,本文方法支持將開(kāi)發(fā)的模塊作為后臺(tái)服務(wù)部署于服務(wù)器,不占用客戶(hù)端資源,響應(yīng)并發(fā)用戶(hù)需求,具有更好的用戶(hù)體驗(yàn)。然而,DocX在處理大文件時(shí),會(huì)出現(xiàn)效率降低的情況,但相對(duì)于其輕量級(jí)插件的定位來(lái)說(shuō),總體效率和優(yōu)勢(shì)是較明顯的。

        猜你喜歡
        單元格開(kāi)源表格
        《現(xiàn)代臨床醫(yī)學(xué)》來(lái)稿表格要求
        玩轉(zhuǎn)方格
        玩轉(zhuǎn)方格
        統(tǒng)計(jì)表格的要求
        統(tǒng)計(jì)表格的要求
        統(tǒng)計(jì)表格的要求
        五毛錢(qián)能買(mǎi)多少頭牛
        淺談Excel中常見(jiàn)統(tǒng)計(jì)個(gè)數(shù)函數(shù)的用法
        西部皮革(2018年6期)2018-05-07 06:41:07
        大家說(shuō):開(kāi)源、人工智能及創(chuàng)新
        開(kāi)源中國(guó)開(kāi)源世界高峰論壇圓桌會(huì)議縱論開(kāi)源與互聯(lián)網(wǎng)+創(chuàng)新2.0
        在办公室被c到呻吟的动态图| 国产欧美日韩午夜在线观看| 中日韩欧美成人免费播放| 亚洲国产中文字幕九色| 99久久婷婷国产精品综合网站| 国产精品自产拍在线18禁| 蜜桃尤物在线视频免费看| 亚洲国产精品久久人人爱| 丰满的少妇xxxxx青青青| 欧美精品aaa久久久影院| 亚洲国产日韩av一区二区| 手机在线国产福利av| 漂亮丰满人妻被中出中文字幕| 精品国内在视频线2019| 孩交精品xxxx视频视频| 久久这里只精品国产99热| 丝袜欧美视频首页在线| 中文字幕日韩精品中文字幕| 激情内射人妻1区2区3区| 亚洲中文字幕久久无码精品| aaaaaa级特色特黄的毛片| 无码中文日韩Av| 国产人妖赵恩静在线视频| 精品人妻在线一区二区三区在线| 国色天香中文字幕在线视频| 免费看黄色电影| 欧美喷潮系列在线观看| av天堂线上| 久久久精品人妻一区二区三区免费| 日本孕妇潮喷高潮视频| 小荡货奶真大水真多紧视频| 无码丰满少妇2在线观看| 日本护士一区二区三区高清热线 | 天堂av一区二区在线观看| av在线手机中文字幕| 亚洲国产精品国自产拍性色| 热99re久久精品这里都是精品免费| 国产麻豆成人精品av| 精品2021露脸国产偷人在视频| 亚洲视频精品一区二区三区| 日本一区二区三区四区高清不卡|