• 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 前端代码
    引入打印的js文件
    import { getLodop } from ‘@/views/components/qz-lodop-funcs/LodopFuncs’

    5.编写html页面

    5.1 打印按钮
    打印

    5.2 html列表页面
    dataList为Java后端接口查询的列表数据

    < div ref=“problemContent”>
    < table v-show=“tableShow”>
    < tr>
    < th>序号< /th>
    < th>扫描人< /th>
    < th>问题数量< /th>
    < th>扫描页数< /th>
    < th>错误率< /th>
    < /tr>
    < tr v-for=“(chapter,index) in dataList”>
    < td>{{index + 1}}< /td>
    < td>{{dataList[index] == null ? “” : dataList[index].scannedName}}< /td>
    < td>{{dataList[index] == null ? “” : dataList[index].problemNumber}}< /td>
    < td>{{dataList[index] == null ? “” : dataList[index].scanPageNumber}}< /td>
    < td>{{dataList[index] == null ? “” : dataList[index].errorRate}}< /td>
    < /tr>
    < /table>
    < /div>

    5.3 定义data数据
    data () {
    return {
    htmlCode: ‘’,
    tableShow: false,
    }
    }

    5.4 打印方法
    btnClickPrint () {
    //1. 获取vue中html页面(vue页面编写style不要有scoped,会使html元素中携带data-v-123a743a,造成页面不显示。获取页面全部数据: 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()

    }

  • 相关阅读:
    数字时代古文的传承———云南文化瑰宝“爨文化“(我为家乡发声)
    动态生成类--javassist的使用
    利用pwd构造rce
    antd table表格支持多选框选择当前列,进行格式设置等
    Redis 的事务操作
    Kaggle 专利匹配比赛赛后总结
    matlab相机标定实验
    【PostgreSQL内核学习(十八)—— (数据库表参数)】
    pyModbusTCP 读取零点 CN- 8031 /CT-121F DI 数字输入
    Linux:生产消费模型 & 读者写者模型
  • 原文地址:https://blog.csdn.net/weixin_45591617/article/details/134027002