国产linux系统(银河麒麟,统信uos)使用 PageOffice 国产版在线动态填充 word 文件
PageOffice 国产版 :支持信创系统,支持银河麒麟V10和统信UOS,支持X86(intel、兆芯、海光等)、ARM(飞腾、鲲鹏、麒麟等)芯片架构。
在实际的Word文档开发中,经常需要自动填充数据到Word模板中,以生成动态的Word文档。例如,我们可以根据数据库表中已保存的个人信息,设计好一个简历模板docx文件,然后通过代码将这些个人信息填充到Word模板中,从而自动生成一份简历。要实现这一功能,可以利用PageOffice提供的操作数据区域的对象。
首先,需要编辑Word模板,在其中添加书签。例如,在D盘根目录下新建一个Word文件,命名为template1.docx。打开该文件后,可以通过选中需要标记为书签的文字,例如“[用户名]”,然后点击Word菜单中的“插入”-“书签”来添加书签。在弹出的“书签”对话框中,输入新书签的名称,并点击右侧的“添加”按钮。需要注意的是,书签名必须以“PO_”开头,并由字母和数字组成,但中间不能有空格。建议按照上述说明手动创建template1.docx并设置书签,也可以下载已制作好的template1.docx。
注意
在使用PageOffice开发的过程中,为了避免出现与用户自己定义的书签出现冲突,要求插入的书签名称必须以“PO_”开头。注意是字母o,不是数字0。在PageOffice的概念里提到的数据区域,本质上就是书签,但是只有“PO_”开头的书签才叫数据区域。
然后,编写代码打开template1.docx文件,并动态填充数据。
后端代码
PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
WordDocument doc = new WordDocument();
DataRegion dataRegion1 = doc.openDataRegion("PO_UserName");//打开数据区域"PO_UserName"
dataRegion1.setValue("张三");//给数据区域赋值
poCtrl.setWriter(doc); // 必须。
poCtrl.webOpen("D:\\template1.docx", OpenModeType.docNormalEdit, "张佚名");
参考链接:
数据区域填充文本
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗