web 列印外掛程式 hiprint 使用

2021-10-08 17:19:47 字數 2665 閱讀 8790

官網: 

demo: demo/list

vue demo: 

官網介紹: hiprint 是乙個web 列印的js元件,無需安裝軟體。支援windows,macos,linux 系統,支援移動端,pc端瀏覽器,angular,vue,react 等 分頁預覽,列印,操作簡單,執行快速。預覽介面為css+html 。支援資料分組,批量預覽。生成pdf,更方便

設計介面截圖; 

優點:  瀏覽器設計列印; 列印服務不侷限於 win; 客戶端通過websocket連線列印服務; 可以獲取服務端印表機列表並在客戶端傳參指定印表機列印;

缺點: 源**沒開源, 沒有抽離 npm 包

vue 引入:

這裡有個基於 vue-cli 2.0 的 demo:   , fork 自 peakcool 

前端包 download 放到 src/assets/plugins/目錄下

元件內引入: 

import "@/assets/plugins/hiprint/css/hiprint.css";

import "@/assets/plugins/hiprint/css/print-lock.css";

import "@/assets/plugins/hiprint/polyfill.min.js";

import "@/assets/plugins/hiprint/plugins/jquery.minicolors.min.js";

import from "@/assets/plugins/hiprint/hiprint.bundle.js";

import "@/assets/plugins/hiprint/plugins/jquery.hiwprint.js";

import "@/assets/plugins/hiprint/plugins/qrcode.js";

import "@/assets/plugins/hiprint/plugins/jsbarcode.all.min.js";

import from "@/assets/plugins/hiprint/etypes/default-etype-provider.js";

import from "@/assets/plugins/hiprint/custom_test/print-data.js";

import from "@/assets/plugins/hiprint/custom_test/custom-print-json.js";

需要修改對應的外掛程式匯出

src/assets/plugins/hiprint/hiprint.bundle.js

export const hiprint = function (t) ;

function n(i) from "../hiprint.bundle.js";

export const defaultelementtypeprovider = (function() , ***]

5. 遠端列印 ==> 修改原始碼 # 5169 (2.5.3 版本)  this.socket = io("", 改為自己的服務位址或者動態全域性配置;

6. 自定義元件 ==>  init 時傳入自定義元件, 如下:

const cuselements = [,

...

]hiprint.init();

在 src/assets/plugins/hiprint/etypes/default-etype-provider.js  中接收引數並新增到型別中

import  from "../hiprint.bundle.js";

export const defaultelementtypeprovider = (function() from "@/assets/plugins/hiprint/hiprint.bundle.js";

import "@/assets/plugins/hiprint/plugins/jquery.hiwprint.js";import "@/assets/plugins/hiprint/plugins/qrcode.js";import "@/assets/plugins/hiprint/plugins/jsbarcode.all.min.js";初始化控制項

$(document).ready(function() );連線印表機並獲取列印伺服器上的印表機列表:

hiwebsocket.stop();hiwebsocket.start(this.printeraddr);settimeout(() => , 1000);列印

hiprinttemplate.print2(this.list, );// this.list 列印資料// this.printer 選擇的印表機, 不傳的話是列印服務預設的印表機

ExtJs列印外掛程式

這是別人寫的乙個列印的小外掛程式,非常好用,僅需在gridpanel 要有title 的構造引數中加上這麼一行 plugins ext.ux.plugins.print 另外,在火狐中列印多頁時有些不正常,把printpreview.htm中的css檔案去掉就可以了。我們來分析一下它的實現原理,首先...

lodop列印外掛程式

日前做乙個批打卡片和批打條碼的功能模組,在網上搜尋了好久,發現有一款外掛程式lodop很是好用,很好的完成了功能實現,而且使用方便,在此做下筆記望以後有所幫助。lodop支援ie系列 ie核心系列 遨遊 360 世界之窗 搜狗 螞蟻等 瀏覽器,以及 firefox 火狐 系列 chrome 谷歌 系...

js 列印外掛程式

今天幫同事查web頁面直接列印外掛程式,需求就是直接在web頁面內列印,但不彈任何設定窗體。對比了幾個最後選了lodop和pazu。乙個免費乙個收費,lodop確實挺不錯的,可惜老大還是想免費優先,結果試用了pazu,確實方便的狠,支援的設定挺多的。不過我要的功能很簡單 引入控制項 html js呼...