当前位置: 首页 > article >正文

hiprint结合vue2项目实现静默打印详细使用步骤

代码地址是:vue-plugin-hiprint: hiprint for Vue2/Vue3 ⚡打印、打印设计、可视化设计器、报表设计、元素编辑、可视化打印编辑

本地安装包地址:electron-hiprint 发行版 - Gitee.com

1、先安装hipint安装包在本地

2、项目运行npm(socket.io是为了实现自动打印下载的)

npm install vue-plugin-hiprint
npm i jquery --save-d
npm install socket.io

3、在main.js文件中

import {hiPrintPlugin} from 'vue-plugin-hiprint'
Vue.use(hiPrintPlugin, '$pluginName')

import $ from "jquery";
window.jquery = window.$ = $;
Vue.prototype.$ = jquery

4、在node_modules包中找到print-lock.css样式文件复制到项目中

找到后复制到public文件夹

在public文件夹的index.html文件引入这个css文件(说是防止样式重叠使用的)

<!-- 引入vue-plugin-hiprint的样式 -->
<link rel="stylesheet" type="text/css" media="print" href="<%= BASE_URL %>print-lock.css"></link>
<link rel="stylesheet" type="text/css" media="print" href="https://cdn.jsdelivr.net/npm/vue-plugin-hiprint@latest/dist/print-lock.css">

5、在页面的具体使用

print(){
  const styleStr = `<style>样式代码 </style>`;

  let hiprintTemplate = new this.$pluginName.PrintTemplate()
  Array.from(this.$refs.print).forEach(v=>{
    let panel = hiprintTemplate.addPrintPanel({ paperType:'A4',paperNumberDisabled:true})
    panel.addPrintHtml({options: {"left":15,"top":5, "content":`<html><head>${styleStr}</head><body>${v.innerHTML}</body> </html>` } })
  }) 

  this.$message({
    message: '正在执行打印操作,请稍等……',
    type: 'success',
    offset:350
  });
        
  hiprintTemplate.print2()//直接静默打印
  //hiprintTemplate.print()  预览打印
}

6、在App.vue加上隐藏的样式,这样不影响页面样式

#hiwprint_iframe{
  display: none !important;
}

最后:一定要在启动了客户端的软件情况下点击打印按钮,不然会报错未连接客户端!


http://www.kler.cn/a/453739.html

相关文章:

  • 结合大语言模型的异常检测方法研究
  • Cascader 级联选择器一级单选二级多选
  • Burp炮台实现(动态ip发包)
  • 数学建模助力干细胞研究,配体纳米簇如何影响干细胞命运
  • CSS(二):美化网页元素
  • 基础12 友元相关
  • 破解海外业务困局:新加坡服务器托管与跨境组网策略
  • golang, go sum文件保证下载的依赖模块是一致的
  • 双指针——有效三角形的个数
  • 使用Python获取PDF文本和图片的精确位置
  • MySQL windows解压版的安装与配置方法
  • 【Kafka基础】10个Kafka基础知识,面试经常会问到
  • LLM(Large Language Model Course)大模型学习路线(课程推荐)
  • pyqt5冻结+分页表
  • 若依plus apifox导入接口显示为空
  • 设置首选网络类型以及调用Android框架层的隐藏API
  • 图像处理基础 | 格式转换.nv12转高质量.jpg灰度图 python
  • TP5 动态渲染多个Layui表格并批量打印所有表格
  • 文档解析丨高效准确的PDF解析工具,赋能企业非结构化数据治理
  • 用友-友数聚科技CPAS审计管理系统V4 getCurserIfAllowLogin存在SQL注入漏洞
  • Firewalld 防火墙详解:深入理解与实践指南
  • centos 释放系统预留内存并关闭Kdump服务
  • 如何保证mysql数据库到ES的数据一致性
  • leetcode 96.不同的二叉搜索树
  • 深圳南柯电子|医疗设备EMC测试整改:确保电磁安全的合规之路
  • 在HTML中使用Vue如何使用嵌套循环把集合中的对象集合中的对象元素取出来(我的意思是集合中还有一个集合那种)