vue-print-nb 打印相關問題

一、背景與解決方案

? ? ? ? 1、ElementUI表格打印通病,均面臨邊框丟失、寬度超出問題:相關解決代碼有注釋;

? ? ? ? 2、大多數情況下不會打印頁眉頁腳的日期、網址、未配置popTitle顯示的undefined:相關解決代碼有注釋;

? ? ? ? 3、打印預覽頁面不顯示背景色:相關解決代碼有注釋;

? ? ? ? 4、客戶希望打印預覽頁面顯示登錄用戶信息水印,前端頁面不顯示水印:使用vue2-water-marker組件,并根據用戶操作控制水印組件顯示變量;

? ? ? ? 5、打印預覽頁面表頭單元格與表體單元格右邊框錯位:隱藏表頭,將表頭作為表體第一行數據,并將樣式與表頭樣式統一;表頭只有一層且只有一個分組,所以將組名直接寫為html元素,放于表格上方,并將樣式與表頭樣式統一。

二、代碼示例

<template><div><el-button type="primary" size="mini" icon="el-icon-printer" v-print="printConfig" @click="handlePrint">打印</el-button><div id="printContent"><!-- 打印頁面水印,行內樣式是為了解決打印頁面不顯示背景色的問題 --><!-- text: 水印內容,根據需求設置,opacity: 水印內容透明度,0~1之間,越大越清晰 --><vue2-water-marker v-if="showWaterMask" text="打印水印" :opacity="0.8" :zIndex="9999" style="-webkit-print-color-adjust: exact"></vue2-water-marker><div class="table-title">分組表頭</div><el-table :data="dataSource" :row-style="rowStyle" size="mini" :show-header="false" border style="width: 100%;"><el-table-columnprop="index"label="序號"algin="center"width="70"></el-table-column><el-table-columnprop="name"label="姓名"width="180"></el-table-column><el-table-columnprop="sex"label="性別"width="180"></el-table-column><el-table-columnprop="height"label="身高"width="180"></el-table-column></el-table></div></div>
</template>
<script>
import print from 'vue-print-nb'export default {directives: {print   },data () {return {showWaterMask: false,printConfig: {id: 'printContent',closeCallback: () => {this.showWaterMask = false; //關閉時不顯示水印}},dataSource: [{index: '序號',name: '姓名',sex: '性別',height: '身高'},{index: '1',name: '張三',sex: '男',height: 180},{index: '2',name: '李四',sex: '女',height: 160}]}},methods: {rowStyle ({rowIndex}) { //將表體數據第一行顯示樣式調整為與表頭樣式一致return rowIndex===0?{backgroundColor: '#F5F7FA',fontWeight: 'bold',color: '#909399',webkitPrintColorAdjust: 'exact' //解決打印頁面“表頭”不顯示背景色的問題}:{};},handlePrint () {if(this.userName) {this.showWaterMask = true;}}}
}
</script>
<style scoped lang="less">
#printContent>.table-title {padding: 10px 0;background-color: #F5F7FA;border: 1px solid #CCC;border-bottom: none;font-size: 12px;font-weight: bold;vertical-align: middle;text-align: center;color: #909399;
}
</style>
<!-- 打印預覽頁面樣式 -->
<style scoped media="print" lang="less">
@page {size: auto;margin: 3mm;
}
@media print {html {margin: 0px;height: auto;background-color: #FFF;}body {border: 1px solid #FFF;margin: 10mm 15mm 10mm 15mm;} //以上代碼解決打印頁面頁眉頁腳顯示日期、網址、undefined問題#printContent>.table-title {width: calc(100% - 2px);border-bottom: 1px solid #CCC;-webkit-print-color-adjust: exact; //解決打印頁面分組表頭不顯示背景色的問題}// 解決打印頁面表格寬度超出預覽區域問題/deep/ table {table-layout: auto !important;}/deep/ #printContent table {table-layout: fixed !important;}/deep/ .el-table__body-wrapper .el-table__body {width: 100% !important;border-right: 1px solid #CCC !important; //解決打印頁面表格右邊框不顯示的問題}
}
</style>

二、涉及問題

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/84473.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/84473.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/84473.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Agent應用案例精選,以及主流Agent框架開源項目推薦

一、Agent技術概述 在人工智能領域,Agent(智能體)是指能夠感知環境、自主決策并執行動作以實現特定目標的智能系統。隨著大語言模型(LLM)的快速發展,基于LLM的Agent系統已成為當前AI研究的熱點方向,為復雜任務解決提供了全新范式。 Agent的核心特征 自主性(Autonomy): 能夠…

Linux下基礎IO

1 文件 這里首先得理解一下文件&#xff0c;文件存放在磁盤中&#xff08;磁盤是永久性存儲介質&#xff0c;是一種外設&#xff0c;也是一種輸入輸出設備&#xff09;&#xff0c;磁盤上的文件的所有操作&#xff0c;都是對外設的輸入和輸出簡稱IO&#xff0c;linux下一切皆?…

云原生核心技術 (6/12): K8s 從零到一:使用 Minikube/kind 在本地搭建你的第一個 K8s 集群

摘要 本文是一篇保姆級的實踐指南&#xff0c;旨在解決學習 Kubernetes (K8s) 時“環境搭建難”的頭號痛點。我們將對比分析 Minikube、kind、K3s 和 Docker Desktop Kubernetes 等主流本地 K8s 環境方案的優缺點&#xff0c;幫助你選擇最適合自己的工具。隨后&#xff0c;文章…

線程運行的現象和相關指令

一.多個線程運行的現象 1.規律 交替執行誰先誰后&#xff0c;不由我們控制 2.舉例 Slf4j(topic "c.Test6") public class Test06 {public static void main(String[] args) {//創建并運行線程1new Thread(()->{while (true){log.debug("running");…

Windows網絡配置避坑指南

Windows網絡配置避坑指南 一、網絡配置是什么?防火墻的“信任開關”二、何時需要手動切換網絡配置文件??必需切換的場景高危!絕對禁止選錯的兩個場景三、3種切換指南(Win10/11通用)方法1:圖形化操作(推薦小白)?方法2:用PowerShell強制切換方法3:注冊表底層修改(應…

基于ThinkPHP8.*的后臺管理框架--Veitool框架學習使用

基于ThinkPHP8.*的后臺管理框架--Veitool框架學習使用 一、安裝部署二、目錄結構 一、安裝部署 環境要求 Linux、Unix、macOS、Windows Nginx、Apache、IIS PHP > 8.1.0 MySQL > 5.7 下載地址 官網下載&#xff1a;https://www.veitool.com/download 境內倉庫&#xff…

Java多線程通信核心機制詳解

在Java中&#xff0c;多線程通信與協作主要通過以下幾種核心機制實現&#xff0c;每種方式適用于不同的并發場景&#xff1a; &#x1f504; 一、共享變量同步控制&#xff08;基礎方式&#xff09; // 使用volatile保證可見性 private volatile boolean flag false;// 線程A…

Django知識-視圖

視圖設置 一個視圖函數&#xff0c;簡稱視圖&#xff0c;是一個簡單的Python 函數&#xff0c;它接受Web請求并且返回Web響應。代碼寫在哪里也無所謂&#xff0c;只要它在你的應用目錄下面。但是為了方便視圖一般被定義在“應用/views.py”文件中。 視圖的第一個參數必須為Ht…

DevSecOps實踐:CI/CD流水線集成動態安全測試(DAST)工具

&#x1f525;「炎碼工坊」技術彈藥已裝填&#xff01; 點擊關注 → 解鎖工業級干貨【工具實測|項目避坑|源碼燃燒指南】 讓安全掃描成為代碼交付的“守門員” 引言&#xff1a;安全漏洞的代價&#xff0c;越早發現越好 在軟件開發領域&#xff0c;安全漏洞的修復成本隨著開發…

使用CSDN作為Markdown編輯器圖床

使用CSDN作為Markdown編輯器圖床 一、CSDN圖床的優勢 MD編輯器在撰寫文檔時功能強大&#xff0c;但插入圖片需借助圖床。CSDN作為免費圖床&#xff0c;操作簡單且穩定性高&#xff0c;適合日常使用。只需將圖片上傳至CSDN的MD編輯器&#xff0c;即可獲取可直接訪問的圖片地址…

python打卡day51

復習日 作業&#xff1a;day43的時候我們安排大家對自己找的數據集用簡單cnn訓練&#xff0c;現在可以嘗試下借助這幾天的知識來實現精度的進一步提高 還是繼續用上次的街頭食物分類數據集&#xff0c;既然已經統一圖片尺寸到了140x140&#xff0c;所以這次選用輕量化模型 Mobi…

Vuex 自動化生成工具

Vuex 自動化生成工具需求文檔 1. 需求背景 為提升前端開發效率&#xff0c;減少重復代碼編寫&#xff0c;需開發一個自動化工具&#xff0c;根據輸入參數自動生成完整的 Vuex 存儲模塊&#xff08;包括api.js&#xff0c;mutations.js&#xff0c;actions.js&#xff0c;gette…

深入淺出多路歸并:原理、實現與實戰案例解析

文章目錄 二路歸并多路歸并方法一&#xff1a;指針遍歷&#xff08;多指針比較法&#xff09;方法二&#xff1a;小根堆法&#xff08;最小堆歸并&#xff09; 實際場景外部排序 經典題目丑數Ⅱ方法一&#xff1a;三指針法方法二&#xff1a;優先隊列法&#xff08;K路歸并&…

Koji構建系統宏定義注入與Tag體系解析

在Red Hat生態的持續集成鏈條中&#xff0c;Koji作為核心構建系統&#xff0c;其靈活的宏定義機制與精密的Tag體系是保障軟件包高效流轉的關鍵。本文將系統闡述在既有構建目標中注入宏定義的技術路徑&#xff0c;并深度解析Koji中Target與Tag的概念架構及其版本演進差異。 一、…

【Kubernetes】架構與原理:核心概念、組件協同及容器化部署解析

文章目錄 一、前言二、為什么需要 Kubernetes1. 傳統部署方法2. 虛擬化部署3. 容器化部署Ⅰ. 基本概念Ⅱ. 容器編排的必要性Ⅲ. 容器化部署的優勢4. k8s 的歷史與發展三、Kubernetes 基本概念1. k8s 核心架構解析Ⅰ. 控制平面與工作節點Ⅱ. 各組件協同工作原理2. k8s 核心概念Ⅰ…

Pip Manager本地Python包管理器

在Python開發領域&#xff0c;包管理是每個開發者日常工作中不可或缺的一部分。雖然命令行工具pip功能強大&#xff0c;但對于初學者和非技術背景的用戶來說&#xff0c;命令行界面往往顯得不夠友好。如果使用PyCharm&#xff0c;則可以非常簡單的管理安裝的Python包&#xff1…

vscode界面設置透明度--插件Glasslt-VSC

【快捷鍵:透明度提高(CtrAlt Z)&#xff0c;透明度降低(CtrAlt C)】

OPENCV形態學基礎之一膨脹

一.膨脹的原理 數學表達式&#xff1a;dst(x,y) dilate(src(x,y)) max(x,y)src(xx,yy) 膨脹是圖像形態學的基本功能之一&#xff0c;膨脹顧名思義就是求圖像的局部最大值操作&#xff0c;它的數學表達式是dst(x,y) dilate(src(x,y)) max(x,y)src(xx,yy)。 從數學的角度來看…

徹底禁用Windows Defender通知和圖標

方法 一&#xff1a;通過注冊表強制隱藏 Defender 圖標&#xff08;永久生效&#xff09;?? &#xff08;適用于徹底隱藏圖標&#xff0c;但需謹慎操作&#xff09; ??打開注冊表編輯器?? 按 Win R&#xff0c;輸入 regedit 回車。 ??導航到 Defender 相關注冊表項?…

Kafka 2.7.0 單節點安裝與啟動教程(適配 JDK 1.8)

1. 下載與解壓 官方下載 Kafka 2.7.0 https://archive.apache.org/dist/kafka/2.7.0/kafka_2.13-2.7.0.tgz 上傳到虛擬機&#xff08;如 /home/wang/soft/kafka&#xff09;解壓&#xff1a; tar -zxvf kafka_2.13-2.7.0.tgz 2. 配置環境變量&#xff08;可選&#xff0c;便…