91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue中使用Lodop插件實現打印功能的簡單方法

發布時間:2020-09-27 12:25:00 來源:腳本之家 閱讀:414 作者:ChiFung 欄目:web開發

介紹

需要進行打印功能,Lodop就是實現需求的插件.就是引入對應的js-sdk,使用js調用對應的打印方法,然后就會調出客戶端軟件(需要用戶安裝),然后就可以在軟件里面打印內容了.

使用方法

最小實現

實現打印必須要執行的3個最基本的方法

LODOP.PRINT_INIT("打印任務名");    //首先一個初始化語句 
LODOP.ADD_PRINT_TEXT(0,0,100,20,"文本內容一");//然后多個ADD語句及SET語句 
LODOP.PRINT();        //最后一個打印(或預覽、維護、設計)語句

所有方法

  • PRINT_INIT(strPrintTaskName)打印初始化
  • SET_PRINT_PAGESIZE(intOrient,intPageWidth,intPageHeight,strPageName)設定紙張大小 (1橫向2豎向,寬度,高度,頁面大小名稱寬高都設置為0的時候才可以設置"A5","A4")
  • ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml)增加超文本項
  • ADD_PRINT_TEXT(intTop,intLeft,intWidth,intHeight,strContent)增加純文本項
  • ADD_PRINT_TABLE(intTop,intLeft,intWidth,intHeight,strHtml)增加表格項(strHtml為html模板字符串)
  • ADD_PRINT_SHAPE(intShapeType,intTop,intLeft,intWidth,intHeight,intLineStyle,intLineWidth,intColor)畫圖形
  • SET_PRINT_STYLE(strStyleName, varStyleValue)設置對象風格
  • PREVIEW打印預覽
  • PRINT直接打印
  • PRINT_SETUP打印維護
  • PRINT_DESIGN打印設計

在Vue中使用Lodop

下載lodop,把js文件放到utils里面,把里面兩個方法修改為export function(暴露出去,讓其他js文件import來用)

// 改造LodopFuncs.js
//====判斷是否需要安裝CLodop云打印服務器:====
export function needCLodop(){ ...... }

//====獲取LODOP對象的主過程:====
export function getLodop(oOBJECT,oEMBED){ ...... }

寫好打印方法的邏輯

// doPrint.js
import { getLodop } from '@/utils/LodopFuncs'

/**
 * 打印方法doPrint
 * @param {*} printConfig 任務名,上邊距,左邊距,寬度,高度,打印html內容,是否橫屏,分頁
 */
export default function({ name, top, left, width, height, htmlContent, isHorizontal }) {
 const LODOP = getLodop()
 LODOP.PRINT_INIT('訂貨單') // 打印初始化(打印任務名)
 LODOP.SET_PRINT_PAGESIZE(1, 0, 0, 'A4')
 LODOP.SET_PRINT_STYLE('FontSize', 18) // 樣式
 LODOP.SET_PRINT_STYLE('Bold', 1)
 // LODOP.ADD_PRINT_TEXT(50, 231, 260, 39, '打印頁面部分內容') // 添加純文本內容
 // top,left,width,height,htmlContent
 LODOP.ADD_PRINT_HTM(88, 75, 650, 978, htmlContent) // 添加HTML模板內容
 // LODOP.PRINT(); // 直接打印
 LODOP.PREVIEW() // 預覽
}

在use.js里面把打印方法掛載到全局方法

// use.js
import doPrint from '@/utils/doPrint'

Vue.prototype.$doPrint = doPrint
在vue頁面中使用
 this.$doPrint(data)
 /**
 * 注意: 這里因為用到了這個插件,所以有可能需要讓這個插件內部方法在加載完成后才能正常使用
 * 也就是說,它還有以一些準備工作,例如判斷方法,連接通訊等等
 * 如果直接用會報錯的話,或者崩潰等其他問題,所以就可以在這里延遲再執行打印操作
 * setTimeout(()=> {
 * this.$doPrint(data)
 * })
 * */

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

会同县| 无锡市| 平南县| 乐至县| 乐陵市| 微山县| 乌拉特中旗| 余江县| 巧家县| 泗阳县| 谷城县| 方正县| 凌源市| 瑞金市| 东兰县| 江达县| 镇宁| 牡丹江市| 黎平县| 米脂县| 华池县| 巴楚县| 都江堰市| 海淀区| 岚皋县| 崇州市| 阳东县| 鲁山县| 宁蒗| 武山县| 陆丰市| 宜城市| 呼玛县| 延长县| 东安县| 读书| 南雄市| 枣强县| 纳雍县| 常山县| 凌云县|