最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue中使用vue-plugin-hiprint插件進行打印的功能實現(xiàn)

 更新時間:2025年04月11日 09:50:53   作者:VT.饅頭  
hiprint 是一個web 打印的js組件,無需安裝軟件,支持windows,macOS,linux 系統(tǒng),支持移動端,PC端瀏覽器,angular,vue,react 等 分頁預覽,打印,操作簡單,運行快速,本文介紹了Vue中使用vue-plugin-hiprint插件進行打印,需要的朋友可以參考下

引言

hiprint 是一個web 打印的js組件,無需安裝軟件。支持windows,macOS,linux 系統(tǒng),支持移動端,PC端瀏覽器,angular,vue,react 等 分頁預覽,打印,操作簡單,運行快速。預覽界面為css+html 。支持數(shù)據(jù)分組,批量預覽。生成pdf,圖片更方便

附上該插件的官方文檔 http://hiprint.io/,本文中未提及的功能基本上都能在官網(wǎng)中找到。Gitee鏈接

一、安裝插件

1、安裝

npm install vue-plugin-hi-print
# 或者
yarn add vue-plugin-hi-print

在項目入口文件index.html中引入樣式文件,按需引入即可。

//在項目的入口文件中引入所需的CDN
 <!DOCTYPE html>
 <html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <title>hinnn-hiprint</title>
    <!-- hiprint -->
    <link href="hiprint/css/hiprint.css" rel="external nofollow"  rel="stylesheet">
    <link href="hiprint/css/print-lock.css" rel="external nofollow"  rel="external nofollow"  rel="stylesheet">
    <link href="hiprint/css/print-lock.css" rel="external nofollow"  rel="external nofollow"  media="print" rel="stylesheet">
  </head>
  <body>
    <!-- 加載 hiprint 的所有 JavaScript 插件。你也可以根據(jù)需要只加載單個插件。 -->
    <!-- polyfill.min.js解決瀏覽器兼容性問題v6.26.0-->
    <script src="hiprint/polyfill.min.js"></script>
    <!-- hiprint 核心js-->
    <script src="hiprint/hiprint.bundle.js"></script>
    <!-- 條形碼生成組件-->
    <script src="hiprint/plugins/JsBarcode.all.min.js"></script>
    <!-- 二維碼生成組件-->
    <script src="hiprint/plugins/qrcode.js"></script>
    <!-- 調(diào)用瀏覽器打印窗口helper類,可自行替換-->
    <script src="hiprint/plugins/jquery.hiwprint.js"></script>
  </body>
 </html> 

2、頁面中引入

全局引入

// main.ts
import { hiPrintPlugin } from 'vue-plugin-hiprint'
app.use(hiPrintPlugin)
// 局部引入
import { hiPrintPlugin } from 'vue-plugin-hiprint'

二、打印html元素

<template>
	<div  ref="printRef" style="height: 100%;width: 100%;"></div>
</template>
<script lang="ts" setup name="mesFanTwins">
import {hiprint} from 'vue-plugin-hiprint';
const printRef = ref();
const print()=()=>{
    //初始化
    hiprint.init() 
    const hiprintTemplate = new hiprint.PrintTemplate()
    // printByHtml為預覽打印
    hiprintTemplate.printByHtml(printRef.value,{}); 
}

</script>

三、打印配置項

//初始化
hiprint.init();
//創(chuàng)建實例
var hiprintTemplate = new hiprint.PrintTemplate();//默認添加A4大小的面板
var panel = hiprintTemplate.addPrintPanel({ width: 100, height: 130, paperFooter: 340, paperHeader: 10 });//參數(shù)請參考下方列表
名稱類型描述默認值
widthnumber寬度(毫米)A4寬
heightnumber高度(毫米)A4高
paperTypestringA3,A4等 自定義則為空A4
paperHeadernumber頁眉線top值(單位pt),默認0,可空0
paperFooternumber頁尾線top值(單位pt),默認等于紙張高度對應的pt值,可空紙張高pt
paperNumberLeftnumber頁碼left(pt) 默認紙張寬pt-20 可空張寬pt-20
paperNumberTopnumber頁碼top(pt) 默認紙張高pt-20 可空高pt-20
paperNumberDisabledboolean禁用頁碼。默認false 可空false
rotateboolean旋轉(zhuǎn) 比如A4紙旋轉(zhuǎn) 上面寬和高需要對換 默認false可空false
//根據(jù)實際需要進行選擇,其他配置見官網(wǎng)
//文本
panel.addPrintText({ options: { width: 140, height: 15, top: 20, left: 20, title: 'hiprint插件手動添加text', textAlign: 'center' } });
//條形碼
panel.addPrintText({ options: { width: 140, height: 35, top: 40, left: 20, title: '123456', textType: 'barcode' } });
//二維碼
panel.addPrintText({ options: { width: 35, height: 35, top: 40, left: 165, title: '123456', textType: 'qrcode' } });
//長文本
panel.addPrintLongText({ options: { width: 180, height: 35, top: 90, left: 20, title: '長文本:hiprint是一個很好的webjs打印,瀏覽器在的地方他都可以運行' } });
//表格
panel.addPrintTable({ options: { width: 252, height: 35, top: 130, left: 20, content: $('#testTable').html() } });
//Html
panel.addPrintHtml({ options: { width: 140, height: 35, top: 180, left: 20, content:'' } });
//豎線//不設(shè)置寬度
panel.addPrintVline({ options: { height: 35, top: 230, left: 20 } });
//橫線 //不設(shè)置高度
panel.addPrintHline({ options: { width: 140, top: 245, left: 120 } });
//矩形
panel.addPrintRect({ options: { width: 35, height: 35, top: 230, left: 60 } });
//打印設(shè)計
hiprintTemplate.design('#hiprint-printTemplate');

四、打印JSON模板

新建panel.js文件,該文件為JSON模板,后續(xù)需要見數(shù)據(jù)填入,示例內(nèi)容如下,可以根據(jù)自己需要實現(xiàn)的效果進行修改。

export const panel = {
    "panels": [
      {
        "index":0,
        "height":20,
        "width":20,
		"paperHeader":2,
		"paperFooter":0,
        "paperNumberDisabled":true,
		"rotate":true,
        "printElements":[{
            "options":{
            "left":4,
            "top":30,
            "height":40,
            "width":40,
            "field": "barcodeNumber",
            "textType":"qrcode"
            },
            "printElementType":{"type":"text"},
          },
        ],
      }]
  }
import { panel } from './panel.js';
import {hiprint} from 'vue-plugin-hiprint';
//將數(shù)據(jù)以數(shù)組方式存入,會根據(jù)模板定義的樣式來打印
let printList=[]
printList.push({
	barcodeNumber: newfanframecode
})		
hiprint.init();
var hiprintTemplate = new hiprint.PrintTemplate({
	template: panel
});
hiprintTemplate.print(printList);

五、總結(jié)

以上就是Vue中使用vue-plugin-hiprint插件進行打印的實現(xiàn)步驟的詳細內(nèi)容,更多關(guān)于Vue vue-plugin-hiprint打印的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Mixin混入分發(fā)Vue組件可復用功能基礎(chǔ)示例

    Mixin混入分發(fā)Vue組件可復用功能基礎(chǔ)示例

    這篇文章主要為大家介紹了Mixin混入分發(fā)Vue組件可復用功能基礎(chǔ)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • vue3中引入svg矢量圖的實現(xiàn)示例

    vue3中引入svg矢量圖的實現(xiàn)示例

    在項目開發(fā)過程中,我們經(jīng)常會用到svg矢量圖,本文主要介紹了vue3中引入svg矢量圖的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • 關(guān)于Vue中使用alibaba的iconfont矢量圖標的問題

    關(guān)于Vue中使用alibaba的iconfont矢量圖標的問題

    這篇文章主要介紹了Vue使用alibaba的iconfont矢量圖標的問題,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • Vue中的computed屬性詳解

    Vue中的computed屬性詳解

    這篇文章主要為大家介紹了Vue中的computed屬性,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • vue內(nèi)置組件transition簡單原理圖文詳解(小結(jié))

    vue內(nèi)置組件transition簡單原理圖文詳解(小結(jié))

    這篇文章主要介紹了vue內(nèi)置組件transition簡單原理圖文詳解(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Vue的土著指令和自定義指令實例詳解

    Vue的土著指令和自定義指令實例詳解

    這篇文章主要介紹了Vue的土著指令和自定義指令的用法講解 ,需要的朋友可以參考下
    2018-02-02
  • vue強制刷新組件的方法示例

    vue強制刷新組件的方法示例

    這篇文章主要介紹了vue強制刷新組件的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • vue實現(xiàn)導航欄下拉菜單

    vue實現(xiàn)導航欄下拉菜單

    這篇文章主要為大家詳細介紹了vue實現(xiàn)導航欄下拉菜單,帶展開收縮動畫,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • vue插件--仿微信小程序showModel實現(xiàn)模態(tài)提示窗功能

    vue插件--仿微信小程序showModel實現(xiàn)模態(tài)提示窗功能

    這篇文章主要介紹了vue插件--仿微信小程序showModel實現(xiàn)模態(tài)提示窗,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • 關(guān)于vue-router的那些事兒

    關(guān)于vue-router的那些事兒

    要學習vue-router就要先知道這里的路由是什么?為什么我們不能像原來一樣直接用標簽編寫鏈接哪?vue-router如何使用?常見路由操作有哪些?等等這些問題,就是本篇要探討的主要問題,感興趣的朋友跟隨腳本之家小編一起學習吧
    2018-05-05

最新評論

卢龙县| 北辰区| 金塔县| 肇州县| 普陀区| 洪洞县| 和政县| 洛阳市| 白城市| 磐石市| 陇川县| 华宁县| 农安县| 雷州市| 肥乡县| 上饶县| 澄城县| 太和县| 永平县| 奈曼旗| 汕头市| 通渭县| 隆尧县| 虹口区| 河池市| 定兴县| 滨海县| 浠水县| 茂名市| 思茅市| 卓尼县| 库尔勒市| 桐梓县| 且末县| 清河县| 襄汾县| 兴化市| 吉林省| 克什克腾旗| 甘洛县| 柞水县|