用pageOffice插件实现 word文档在线填充指定数据
pageOffice控件實現 office word文檔在線填充指定數據
應用場景
OA辦公中,經常要在文檔的指定位置,填充后端指定數據。
如合同中, 姓名位置,金額位置,住址位置,要填充后端指定數據。合同其它的內容模板是統一的,不用改變。
怎么把后端的關鍵數據,填充到文檔中呢?
實現方法
PageOffice可以實現在文檔中標記的位置處動態填充內容
實現過程
以java的springboot框架為例
1 集成pageOffice
https://www.zhuozhengsoft.com/dowm/
從pageOffice官網
下載頁面,找到springboot的集成示例,按照里面的集成明說,可以集成到自己的springboot項目中。
2 文檔中設置數據區域方法
數據區域的技巧
https://www.kancloud.cn/pageoffice_course_group/pageoffice_course/663125
模板中如何指定位置(PageOffice中的“數據區域”)
模板中必須標記好數據要插入的位置,這樣才可以實現用程序插入數據到文件的相應位置,就是說要想生成文件,數據的位置必須用某種元素來標記出來。使用PageOffice開發,常用的是Word書簽來標記要插入數據的位置。
一般的開發人員使用Word比較少,可能不清楚Word書簽是怎樣插入的,下面簡單的介紹一下插入書簽的方法。
第一種方法:把光標定位到需要標記數據位置的地方,點Word菜單中的“插入”-“書簽”,就會彈出一個標題為“書簽”的對話框(如下圖所示),輸入新書簽的名稱,注意:書簽名必須以字母、漢字、中文標點等開頭,可以包含數字但中間不能有空格(用PageOffice開發的時候不推薦使用中文命名書簽名)。點右側的“添加”按鈕,新的書簽名將出現在下面的列表中。
第二種方法:選擇幾個文字、或一段文字、或者選擇一段包含表格和圖片的內容,為選中的內容指定書簽的對象,然后執行第一種方法的同樣操作,“插入”→“書簽”……
注意:如果新插入位置或新對象采用的是已有的書簽名,原有的書簽將自動取消。
PageOffice示例代碼中的模板在制作的時候,多采用第二中方法定義書簽,插入書簽之前會先寫一個標示性的詞語用中括號括起來,比如:[姓名],然后選中“[姓名]”,再插入書簽。這樣做的目的是便于在查看或編輯模板數據位置的時候一目了然。
3 設置數據區域 注意事項
方便顯示書簽可以設置如下
在使用PageOffice開發的過程中,為了避免出現與用戶自己定義的書簽出現沖突,要求插入的書簽名稱必須以“PO_”開頭。注意是字母O,不是數字0。在PageOffice的概念里提到的數據區域,本質上就是書簽,但是只有“PO_”開頭的書簽才叫數據區域,請大家注意這點。
模板的制作方法
制作模板的過程,實際上就是插入數據區域也就是插入“po_”開頭的書簽,標記在生成文件的時各個數據在文件查插入的位置,但是鑒于Word書簽的特點:書簽可以相互包含、相鄰的書簽會互相干擾,插入數據區域的時候需要一些技巧和注意事項,在這里一并介紹一下。
① 插入數據區域前選擇的文本內容如果不是故意要跨段的話,不要選擇段落末尾的回車換行符“┙”。
② 如果說“[姓名]”就是要插入的數據區域的文本標示,那么請在“[”前和“]”后分別插入一個空格變成“ [姓名] ”,但是選擇的數據區域標示的時候不要選擇中括號前后的空格,只選擇“[姓名]”,然后點Word菜單中的“插入”-“書簽”,命名為:PO_name。
③ 插入的任意的兩個數據區域不能首尾相連。不允許前面的數據區域的末尾后面緊接著就是后一個數據區域的開始,中間連空格都沒有,這是不允許的。
④ 插入的數據區域不要互相包含。不推薦一個數據區域中完整的包含了另一個數據區域,這樣做在程序生成文件的時候,不會出現錯誤,但是沒意義,除了造成使用的混亂之外沒有好處。
在生成文件的時候,數據區域的標示會被程序中設置的值自動替換掉。
4 通過代碼寫入數據
設置好模板后。如圖
通過以上代碼,可以將數據庫中的 張三 和 銷售部寫到文檔中。
代碼打開后的效果
5 總結
通過pageOffice插件,可以簡單的實現 word文檔在線填充指定數據
總結
以上是生活随笔為你收集整理的用pageOffice插件实现 word文档在线填充指定数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP 模板引擎,ASP 模板类 (Ta
- 下一篇: RT-Thread柿饼的控件简介