Demo: 前端生成条形码并打印

前端生成条形码并打印

在这里插入图片描述

安装依赖:
npm i print-js // 打印
npm i jsbarcode // 生成条形码

<template><div id="printContent" style="display: none;"><div id="elTable"><div class="name">名称:{{ printInfo.name }}</div><div class="name">品牌:{{ printInfo.brand }}</div><div class="name">型号:{{ printInfo.model }}</div><!-- 显示条形码 --><canvas class="barcode" ref="barcodeRef"></canvas></div></div><el-button type="success" @click="pdfPrint">打印pdf文件</el-button>
</template><script setup lang="ts">
import { ref, onMounted } from 'vue'
import printJS from "print-js";
import JsBarcode from 'jsbarcode'; // 导入JsBarcode库const barcodeRef = ref(null) // 条形码实例
// 打印信息
const printInfo = ref({name: '大疆无人机',brand: '南方',model: 'model'
})// 生成条形码
const generateBarcode = () => {const canvas = barcodeRef.value; // 获取到canvas元素// 传递参数生成条形码JsBarcode(canvas, "No.202401250212118948", {format: "CODE128",//条形码的格式width: 2, //线宽height: 48, //条码高度lineColor: "#000", //线条颜色displayValue: true, //是否显示文字margin: 2, //设置条形码周围的空白区域})
}// 打印
const pdfPrint = () => {printJS({printable: 'elTable', // HTML内容type: "html", // 打印类型header: "", // '表单名称',targetStyles: ["*"],style: "@page {margin:1mm 1mm};", // 可选-打印时去掉眉页眉尾ignoreElements: ["no-print"], // 接受打印父 html 元素时应忽略的 html id 数组。properties: null,})
}onMounted(() => {generateBarcode()
})
</script><style lang="scss">
#elTable {width: 200px;.barcode {width: 192px;}
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438019.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信开放平台第三方授权(第二篇)

1.授权步骤开发 参考牛人的文档&#xff0c;按照步骤集成。 配置微信第三方平台中的授权事件接收URL&#xff1a;http://my-domain/notify/receive_ticket配置微信第三方平台中的公众号消息与事件接收URL http://my-domain/notify/APPID/callback首次启动后需要 等待收到 微信推…

VUE3动漫影视视频网站模板源码

文章目录 1.视频设计来源1.1 主界面1.2 动漫、电视剧、电影视频界面1.3 播放视频界面1.4 娱乐前线新闻界面1.5 关于我们界面 2.效果和源码2.1 动态效果2.2 源码结构 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/article/deta…

GBASE南大通用分享-ConnectionTimeout 属性

GBASE南大通用分享 获取或设置连接超时时间&#xff0c;值为‚0‛时没有限制。  语法 [Visual Basic] Public Overrides ReadOnly Property ConnectionTimeout As Integer Get [C#] public override int ConnectionTimeout { get; }  实现 IDbConnection.Connecti…

【文本到上下文 #7】探索 NLP 中的 Seq2Seq、编码器-解码器和注意力机制

一、说明 今天&#xff0c;我们将探讨序列到序列 &#xff08;seq2seq&#xff09; 模型的复杂工作原理&#xff0c;特别关注编码器-解码器架构和注意力机制。这些概念是各种 NLP 应用的基础&#xff0c;从机器翻译到问答系统。 这是可以期待的&#xff1a; Seq2Seq模型中的编码…

Android Automotive:在路上释放 Android 操作系统的力量

Android Automotive&#xff1a;在路上释放 Android 操作系统的力量 Android 在汽车行业的历程车载信息娱乐系统 (IVI) 的演变汽车中的 Android&#xff1a;演变和进步Android 汽车操作系统的崛起Polestar 2&#xff1a;开创 Android 汽车体验Android 开源项目 (AOSP) 及其他项…

ATAC-seq发篇测序文章就结束了吗?看如何利用ATAC-seq数据为后续关键基因的转录调控研究提供重要依据

染色质可及性&#xff08;Chromatin Accessibility&#xff09;是染色质的一种特性&#xff0c;为转录因子结合靶基因提供了空间。转座酶可及染色质测序分析&#xff08;ATAC-seq&#xff09;是常见的研究染色质可及性的方法&#xff0c;ATAC-seq联合RNA-seq是一种新的研究思路…

【前端开发】CSS中的:hover伪类选择器 你真的搞懂怎么去使用它吗?

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;web开发者、设计师、技术分享博主 &#x1f40b; 希望大家多多支持一下, 我们一起学习和进步&#xff01;&#x1f604; &#x1f3c5; 如果文章对你有帮助的话&#xff0c;欢迎评论 &#x1f4ac;点赞&a…

某大厂关于Linux系统相关面试题

一、Linux系统和Shell 1、写一个sed命令&#xff0c;修改/tmp/input.txt文件的内容&#xff0c;要求&#xff1a;(1) 删除所有空行&#xff1b;(2) 在非空行前面加一个"AAA"&#xff0c;在行尾加一个"BBB"&#xff0c;即将内容为11111的一行改为&#xff1…

【Linux】第三十八站:信号处理

文章目录 一、信号处理二、再谈进程地址空间三、内核如何实现信号的捕捉四、sigaction 一、信号处理 我们知道&#xff0c;信号保存以后&#xff0c;会在合适的时候进行处理这个信号。 那么信号是如何被处理的&#xff1f;什么时候进行处理呢&#xff1f; 当我们的进程从内核…

如何在Microsoft 365中直接启用 Loop服务

Microsoft Loop是一种变革性共同创建体验&#xff0c;可将工具和设备上的团队、内容和任务汇集在一起&#xff0c;使团队能够共同思考、规划和创建内容。 在之前分享过的文章中已经介绍了如何在Microsoft Teams、Outlook和Word中使用Loop服务&#xff0c;今天继续介绍如何在Mi…

微信小程序上传时报错message:Error: 系统错误,错误码:80051,source size 2148KB exceed max limit 2MB

问题&#xff1a; 微信小程序上传时错误码&#xff1a;80051,source size 2248KB exceed max limit 2MB 问题原因&#xff1a; 由于代码中的静态资源 图片大小超了200k以及主包的体积超出1.5M 解决办法 分包 tabBar 是主包的&#xff0c;不需要分包处理&#xff0c;以下是分…

http和https的区别是什么?https有什么优缺点?

HTTP&#xff08;Hypertext Transfer Protocol&#xff0c;超文本传输协议&#xff09;是一个简单的请求-响应协议&#xff0c;它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。这个简单模型是早期Web成功的有功之臣&#xff0c;因为它…