vue-springboot-pageoffice项目演示了在前端Vue框架和后端Springboot框架的结合下如何使用PageOffice产品,此项目是一个demo项目。
在当前服务器磁盘上新建一个pageoffice系统文件夹,例如:D:/pageoffice(此文件夹将用来存放PageOffice注册后生成的授权文件“license.lic”)。
使用git clone或者直接下载项目压缩包到本地并解压缩。
注意:如果后端Springboot项目的8081端口已经被占用,后端项目更换其他端口后,请记得将前端Vue项目samples-vue-front/vue.config.js文件中proxy对象中的 target指向的地址改成更改后的后端项目的端口,并且将前端Vue项目的index.html中对pageoffice.js引用时的后端项目的端口也改成更改后的端口。
PageOfficeV5.0标准版试用序列号:I2BFU-MQ89-M4ZZ-ZWY7K
PageOfficeV5.0专业版试用序列号:DJMTF-HYK4-BDQ3-2MBUC
pageoffice.jar的所有Releases版本都已上传到了Maven中央仓库,具体您要引用哪个版本请在Maven中央仓库地址中查看,建议使用Maven中央仓库中pageoffice.jar的最新版本。(Maven中央仓库中pageoffice.jar的地址:https://mvnrepository.com/artifact/com.zhuozhengsoft/pageoffice)
<dependency>
<groupId>com.zhuozhengsoft</groupId>
<artifactId>pageoffice</artifactId>
<version>5.3.0.4</version>
</dependency>
@Bean
public ServletRegistrationBean pageofficeRegistrationBean() {
com.zhuozhengsoft.pageoffice.poserver.Server poserver = new com.zhuozhengsoft.pageoffice.poserver.Server();
/**如果当前项目是打成jar或者war包运行,强烈建议将license的路径更换成某个固定的绝
*对路径下,不要放当前项目文件夹下,为了防止每次重新发布项目导致license丢失问题。
* 比如windows服务器下:D:/pageoffice,linux服务器下:/root/pageoffice
*/
//设置PageOffice注册成功后,license.lic文件存放的目录
poserver.setSysPath(poSysPath);
//poSysPath可以在application.properties这个文件中配置,也可以直设置文件夹路径,比如:poserver.setSysPath("D:/pageoffice");
ServletRegistrationBean srb = new ServletRegistrationBean(poserver);
srb.addUrlMappings("/poserver.zz");
srb.addUrlMappings("/posetup.exe");
srb.addUrlMappings("/pageoffice.js");
srb.addUrlMappings("/jquery.min.js");
srb.addUrlMappings("/pobstyle.css");
srb.addUrlMappings("/sealsetup.exe");
return srb;
}
@RequestMapping(value="/Word")
@ResponseBody
public String showWord(HttpServletRequest request) {
PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
//设置服务页面,/api是前端vue项目的代理地址
poCtrl.setServerPage("/api/poserver.zz");
poCtrl.addCustomToolButton("保存", "Save", 1);
poCtrl.addCustomToolButton("另存为", "SaveAs", 12);
poCtrl.addCustomToolButton("打印设置", "PrintSet", 0);
poCtrl.addCustomToolButton("打印", "PrintFile", 6);
poCtrl.addCustomToolButton("全屏/还原", "IsFullScreen", 4);
poCtrl.addCustomToolButton("-", "", 0);
poCtrl.addCustomToolButton("关闭", "Close", 21);
//设置保存方法的url
poCtrl.setSaveFilePage("/api/SimpleWord/save");
//打开word
poCtrl.webOpen("/api/doc/SimpleWord/test.doc", OpenModeType.docNormalEdit, "张三");
return poCtrl.getHtmlCode("PageOfficeCtrl1");
}
<script type="text/javascript" src="http://localhost:8081/samples-springboot-back/pageoffice.js"></script>
<a href="javascript:POBrowser.openWindowModeless('SimpleWord/Word','width=1150px;height=900px;');">最简单在线打开保存Word文件</a>
created: function () {
//由于vue中的axios拦截器给请求加token都得是ajax请求,所以这里建议用axios方式去请求后台打开文件的controller方法
axios
.post("/api/SimpleWord/Word")
.then((response) => {
this.poHtmlCode = response.data;
})
.catch(function (err) {
console.log(err);
});
},
<div style="height: 800px; width: auto" v-html="poHtmlCode" />
methods: {
//控件中的一些常用方法都在这里调用,比如保存,打印等等
/**
* Save(),callParent()等方法都是/api/SimpleWord/Word这个后台controller中PageOfficeCtrl控件通过poCtrl.addCustomToolButton定义的方法。
*/
Save() {
document.getElementById("PageOfficeCtrl1").WebSave();
}
},
mounted: function () {
// 将PageOffice控件中的方法通过mounted挂载到window对象上,只有挂载后才能被vue组件识别
window.Save = this.Save;
},
如果您的项目要用到PageOffice自带电子印章功能,请按下面的步骤进行操作。
1.请在您的web项目的启动类Application类中加上印章功能相关配置代码,具体代码请参考当前项目springboot-pageoffice启动类中电子印章功能配置代码,此处不再赘述。
注意:adminSeal.setSysPath(poSysPath)中的poSysPath指向的地址必须是您当前项目license.lic文件所在的目录。
2.请拷贝当前项目根目录下poseal.db文件到您的web项目的license.lic文件所在的文件夹下。
3.请参考当前项目的一、15、演示加盖印章和签字功能(以Word为例) 示例代码进行盖章功能调用。
1.Java API文档
2.JS API文档
3.PageOffice从入门到精通
技术支持:https://www.zhuozhengsoft.com/Technical/
卓正官网:https://www.zhuozhengsoft.com
联系电话:400-6600-770
QQ: 800038353
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。