vue + html + Lodop打印功能

1.官网下载 http://www.lodop.net/download.html

2.解压安装运行

点击CLodop_Setup_for_Win32NT.exe进行安装

3.vue代码实现(具体操作见官网:http://www.lodop.net/faq/pp35.html)

3.1把官方提供的LodopFuncs.js文件保存到项目某个目录下

3.2 修改LodopFuncs.js文件, 在文件最底部添加一行代码

export { getLodop }; //导出getLodop

把该文件中的getLodop函数 export 出来

4.vue 前端代码

5.编写html页面

5.1 打印按钮

<el-button @click="btnClickPrint" size="small" type="primary">打印

5.2 html列表页面

dataList为Java后端接口查询的列表数据

序号 扫描人 问题数量 扫描页数 错误率
{{index + 1}} {{dataList[index] == null ? "" : dataList[index].scannedName}} {{dataList[index] == null ? "" : dataList[index].problemNumber}} {{dataList[index] == null ? "" : dataList[index].scanPageNumber}} {{dataList[index] == null ? "" : dataList[index].errorRate}}

5.3 定义data数据

data () {

return {

htmlCode: '',

tableShow: false,

}

}

5.4 打印方法

btnClickPrint () {

//1. 获取vue中html页面(vue页面编写style不要有scoped,会使html元素中携带data-v-123a743a,造成页面不显示。获取页面全部数据:this. e l . o u t e r H T M L ) t h i s . h t m l C o d e = t h i s . el.outerHTML) this.htmlCode = this. el.outerHTML)this.htmlCode=this.refs.problemContent.innerHTML

console.log(this.htmlCode)

// 因为html设置了v-show,获取html页面会携带style="display: none;"

this.htmlCode = this.htmlCode.replace('style="display: none;"','').replace(' ','')

//2. 参数(this.htmlCode) = 页面样式 + html页面代码

var strBodyStyle = ""

this.htmlCode = strBodyStyle + this.htmlCode

//3. 调用getLodop获取LODOP对象

let LODOP = getLodop()

//4. 初始化

LODOP.PRINT_INIT("")

//5. 参数设置(距上部高度 左边距 宽度 高度 html页面)

LODOP.ADD_PRINT_HTM("5%","5%","100%","90%",this.htmlCode)

//6. 打印 (输出pdf文件,底部含有LODOP打印标识:LODOP.PRINT())

LODOP.PREVIEW()

}

相关推荐
从心归零10 分钟前
sshj使用代理连接服务器
java·服务器·sshj
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
Jiaberrr1 小时前
前端实战:使用JS和Canvas实现运算图形验证码(uniapp、微信小程序同样可用)
前端·javascript·vue.js·微信小程序·uni-app
Ylucius2 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
LvManBa2 小时前
Vue学习记录之六(组件实战及BEM框架了解)
vue.js·学习·rust
200不是二百2 小时前
Vuex详解
前端·javascript·vue.js
七夜zippoe2 小时前
分布式系统实战经验
java·分布式
LvManBa2 小时前
Vue学习记录之三(ref全家桶)
javascript·vue.js·学习
是梦终空2 小时前
JAVA毕业设计176—基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)
java·spring boot·vue·毕业设计·课程设计·源代码·交通订票
落落落sss3 小时前
sharding-jdbc分库分表
android·java·开发语言·数据库·servlet·oracle