在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案

这篇具有很好参考价值的文章主要介绍了在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、指定内容打印

要调用浏览器中的打印功能,并指定需要打印的内容为特定的DIV内的内容,你可以使用JavaScript来实现。下面是一种实现方法:

  1. 首先,在需要打印的DIV标签上添加一个唯一的ID属性,例如:
<div id="print-content">
  <!-- 这里是需要打印的内容 -->
</div>
  1. 接下来,在JavaScript中使用window.print()方法来调用浏览器的打印功能,并指定打印的内容为指定的DIV。
<script>
  function printDiv() {
    var printContents = document.getElementById("print-content").innerHTML;
    var originalContents = document.body.innerHTML;
    document.body.innerHTML = printContents;
    window.print();
    document.body.innerHTML = originalContents;
  }
</script>
  1. 然后,在页面中添加一个触发打印的按钮,并绑定上面定义的printDiv()函数。
<button onclick="printDiv()">打印</button>

现在,当用户点击"打印"按钮时,浏览器将会打印出指定的DIV内的内容。请注意,由于涉及到浏览器的打印功能,以上方法可能在不同的浏览器中略有差异。

二、背景图片打印

1.CSS背景图片设置

将图片设置在CSS设置为背景图片时,会被打印默认选项“背景图形”的影响,增加了用户端的复杂度。

#print-content {
            width: 700px;
            line-height: 30px;
            background: url('images/main.jpg') no-repeat top left;
        }

在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案,javascript,javascript,html,pdf

2.div相对定位居中

即:将背景图片,单独建立DIV作为底层显示,文字层设置z-index的优先级别。
div相对定位居中:要将一个 <div> 元素相对定位并水平居中,你可以使用以下 CSS 样式:

<style>
  .centered {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
</style>

在上面的示例中,我们给目标 <div> 添加了一个名为 .centered 的类,并设置了相对定位以及水平居中的样式。position: relative; 声明了相对定位,left: 50%; 通过将元素的左边距设置为父元素宽度的一半,将其移到了水平中间位置。transform: translateX(-50%); 这一行样式通过应用 translateX 变换,将元素在水平方向上向左平移了自身宽度的一半,实现了水平居中。

接下来,你可以将该类应用到需要水平居中的 <div> 元素上,例如:

<div class="centered">
  <!-- 这里是需要水平居中的内容 -->
</div>

水平居中是相对父元素进行的,所以父元素应该具有明确的宽度。如果父元素的宽度是根据内容自适应的,请确保父元素可以容纳居中的子元素。

三、完整案例展示

在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案,javascript,javascript,html,pdf

1.CSS样式表

body {
            margin: 0;
            padding: 0;
            font-size: 16px;
        }

        #print-box {
            position: relative;
            width: 1000px;
            left: 50%;
            transform: translateX(-50%);
        }

        .print-bg {
            position: absolute;
            z-index: 99;
        }

        .print-content {
            position: absolute;
            width: 100%;
            line-height: 32px;
            top: 500px;
            z-index: 9999;
            text-align: center;
        }

        .print-content > p {
            width: 90%;
            margin: 40px auto;
            text-align: center;
        }

        .com_name {
            font-size: 38px;
            color: #865800;
            font-weight: bold;
        }

        #non-print {
            position: fixed;
            border-radius: 10px 10px 0 0;
            margin-top: 80px;
            width: 100%;
            height: 80px;
            bottom: 0px;
            line-height: 30px;
            background-color: #0066cc;
            color: #f1f1f1;
            text-align: center;
            z-index: 9999;
        }

        #btn {
            position: fixed;
            width: 80px;
            height: 30px;
            right: 0;
            top: 50px;
            background-color: #0066cc;
            border-radius: 30px 0 0 30px;
            color: #f1f1f1;
            cursor: pointer;
            border: none;
        }

2.HTML容器构建

<div id="print-box">
    <div class="print-bg"><img src="images/main.jpg" alt="" width="1005"></div>
    <div class="print-content">
        <p style="margin-top: 100px;"><span class="com_name">漏刻有时</span></p>
        <p style="font-size: 28px;">开展 <img src="images/adi.png" alt="" height="30"> 抖音直播销售服务,本公司保证所售产品均为品牌正品。</p>
        <p style="font-size: 28px;"><label style="font-weight: bold;">授权期限:</label>2023年8月8日至2024年8月7日</p>
        <p style="text-align: right;padding-right: 50px;margin-top: 280px;font-size: 20px;">宁波漏刻文化科技有限公司</p>
        <p style="text-align: right;padding-right: 50px;font-size: 20px;">2023年8月8日</p>
    </div>
</div>
<div id="non-print">非打印区域</div>
<button id="btn" onclick="printDiv()">打印</button>

@漏刻有时文章来源地址https://www.toymoban.com/news/detail-639732.html

到了这里,关于在浏览器中使用javascript打印HTML中指定Div带背景图片内容生成PDF电子证书查询的解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python Selenium 浏览器打印预览

    在Web开发中,打印预览是一个常见的功能需求。通过打印预览,我们可以预览和调整网页的打印布局、样式和内容。Python的Selenium库是一个强大的工具,可以自动化浏览器操作,包括打印预览。本文将介绍如何使用Python Selenium库来实现浏览器的打印预览功能。 首先,我们需要

    2024年02月03日
    浏览(29)
  • 知识库数据导出为excel-使用JavaScript实现在浏览器中导出Excel文件

    我们智能客服知识库机器人已经开发完成,后端数据库是使用的qdrant向量数据库,但是该数据库并没有导出备份功能,所以我按简单的纯前端实现知识库导出excel数据 使用第三方库(如SheetJS) SheetJS是一个流行的JavaScript库,可帮助处理Excel文件。您可以使用SheetJS来将数据导出

    2024年02月16日
    浏览(44)
  • appemit 支持chrome edge谷歌微软浏览器佳博Gprinter 标签打印机 TSCLIB.DLL 函数库使用说明

    支持谷歌 firefox edge 360 qq sogou等各种浏览器,在线使用 佳博Gprinter 标签打印机 直接js操作 TSCLIB.DLL 函数库使用说明 请在使用TSCLIB.DLL 前,安装条形码打印机驱动程序。 1. openport(a) 说明: 指定计算机端的输出端口 参数: a: 单机打印时,请指定打印机驱动程序名称,例如: TSC TDP

    2024年02月04日
    浏览(32)
  • vue实现打印浏览器页面功能(两种方法)

    1,安装 npm install vue-print-nb --save 2,引入 安装好以后在main.js文件中引入 Vue.use(Print); //注册 3,现在就可以使用了 4.如需通过链接地址打印:window.location.href = airway_bill; airway_bill为链接地址。 5.如果内容打印不全,在打印操作时点击更多设置,然后设置缩放。 插件地址:https

    2024年02月02日
    浏览(33)
  • selenium调用浏览器打印功能,并保存为PDF

    在使用selenium处理浏览器功能时,无法正常检测到或无法定位到你想处理的功能。 而浏览器的启动参数可以帮我们实现很多功能。 点击查看——Chrome浏览器启动命令行参数大全 代码如下(示例): 点击查看——Chrome浏览器启动命令行参数大全

    2024年02月12日
    浏览(29)
  • 为什么vue打印的对象在浏览器中显示...

    1.现象 当在vue中打印对象的时候会发现有一些属性或者全部属性都是显示的...,点击展开后才能看到真正的值是什么. 2.原因 因为在vue中对象都是用了代理重写了get,由于get重写也就导致了浏览器不能直接获取到具体的值,因此才会在打印的时候为...,手动点击展开才显示具体的值

    2024年04月28日
    浏览(22)
  • JavaScript音视频,使用JavaScript如何在浏览器录制电脑摄像头画面为MP4视频文件并下载视频文件到本地

    本章介绍使用JavaScript如何在浏览器录制电脑摄像头画面为MP4视频文件并下载视频文件到本地。 1、使用navigator.mediaDevices.getUserMedia获取摄像头画面 2、将获取到的摄像头画面渲染到canvas画板上 3、将canvas转换为blob对象 4、通过document.createElement(‘a’)调用 href 方法获取此链接并触

    2024年02月02日
    浏览(49)
  • 【JavaScript】2.4 JavaScript和浏览器

    JavaScript最初是为了在浏览器中使用而创建的,它是Web开发的重要组成部分。在这一章节中,我们将学习如何使用JavaScript与浏览器进行交互。 DOM(Document Object Model)是一个编程接口,它允许JavaScript操作HTML文档的内容和结构。HTML文档被解析成一个DOM树,我们可以通过JavaScrip

    2024年02月04日
    浏览(28)
  • HTML浏览器的标准协议

    HTML (Host to Word Language)是 Web浏览器的标准协议,目前的网页浏览器基本都使用该协议。使用该协议的站点能够创建最广泛的用户界面,并提供可供访问的网站。HTML一般由32位到64位文字、符号和图形组成,其中文字部分主要用于显示信息,图形部分主要用于显示图片。它允许用

    2024年02月07日
    浏览(27)
  • [JavaScript] 第三章 Chrome 浏览器中调试JavaScript

    [JavaScript] 第一章 暂无 [JavaScript] 第一章 暂无 [JavaScript] 第三章 Chrome 浏览器中执行 JavaScript

    2024年02月15日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包