首页
学习
活动
专区
圈层
工具
发布

关于CSS 打印你应该知道的样式配置

昨天在做一些打印的需求,遇到了一些小坑,记录分享一下。 CSS 打印分页功能 需求: html 在一个区域显示数据,当放不下时,自动第二页存放,打印 你可以使用 CSS 的分页属性来实现这个功能。...主要是这几个配置样式属性: 分页符: 使用 page-break-before 和 page-break-after 属性来在指定元素之前或之后插入分页符。...然后,我们定义了一个名为 page 的父元素,并为其设置了 page-break-after: always; 属性,表示在该元素之后始终分页。 当数据超出一页时,浏览器会自动将剩余部分放到下一页。...@media print { @page { size: A4; /* 可以使用常见的纸张尺寸如 A4、Letter、Legal 等 */ } } 6.调整图片显示:可以通过设置 max-width...属性来控制打印版本中图片的最大宽度,避免图片溢出页面边界。

2K40

网页内容导出 PDF 实战:基于 html2canvas + jsPDF 的完整方案

一、需求背景 上午 10:30,甲方爸爸甩来一句: “小 X,页面上这块报表我想右键另存为 PDF,能做到不?”...jspdf:canvas 转图片→塞进 A4 PDF,自动分页。 体积?gzip 后不到 50 kB,甲方手机热点都能下载。...三、核心思路(幼儿园版) ① 找到要导出的盒子 ② 用 html2canvas 拍一张“截图” ③ 把截图按 A4 高度裁成 N 张 ④ jspdf 一张一张 addImage,最后 save...from 'jspdf' /** * 导出DOM元素为PDF * 高端的导出方法只需要采用最简单的办法 * 获取浏览器dom就可以了... */ export const exportToPdf...,canvas 提前分段(本文 demo 自动分页,简单粗暴) 字体模糊 scale 调到 2 以上, retina 屏 3 更佳 黑屏 确保背景色 #ffffff,透明 DOM 默认变黑 七、还能怎么玩

48610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Javascript 将 HTML 页面生成 PDF 并下载

    [595.28,841.89] var pdf = new jsPDF('', 'pt', 'a4'); //addImage后两个参数控制添加图片的尺寸,此处将页面高度按照a4纸宽高比列进行压缩...会分页吗? 你可以试试,验证一下自己的想法。...以第二页为例,将竖直方向上的偏移设置为 -841.89即一张a4纸的高度,又因为超过a4纸高度范围的图片不显示,所以第二页显示了图片竖直方向上[841.89,1682.78]范围内的内容,这就得到了分页的效果...; //页面偏移 var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 var imgWidth = 595.28...'); //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if (leftHeight < pageHeight

    3.8K10

    Javascript 将 HTML 页面生成 PDF 并下载

    会分页吗? 你可以试试,验证一下自己的想法。...pdf中的位置 虽然每一页pdf上显示的图片是相同的,但我们通过调整图片的位置,产生了分页的错觉。...以第二页为例,将竖直方向上的偏移设置为 -841.89即一张a4纸的高度,又因为超过a4纸高度范围的图片不显示,所以第二页显示了图片竖直方向上[841.89,1682.78]范围内的内容,这就得到了分页的效果...= contentHeight; //页面偏移 var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在...//有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if (leftHeight < pageHeight

    5K20

    Javascript 将 HTML 页面生成 PDF 并下载

    会分页吗? 你可以试试,验证一下自己的想法。...pdf中的位置 虽然每一页pdf上显示的图片是相同的,但我们通过调整图片的位置,产生了分页的错觉。...以第二页为例,将竖直方向上的偏移设置为 -841.89即一张a4纸的高度,又因为超过a4纸高度范围的图片不显示,所以第二页显示了图片竖直方向上[841.89,1682.78]范围内的内容,这就得到了分页的效果...= contentHeight; //页面偏移 var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在...//有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if (leftHeight < pageHeight

    2.9K30

    如何在 Vue 中打印页面:直接用 web-print-pdf(npm 包)

    HTML / 图片可指定打印机、纸张、边距、份数、单双面支持静默与批量队列配合本地服务规避浏览器限制在 Vue 项目中 5 分钟接入1)安装依赖npm i web-print-pdf2)基础用法:打印当前页面渲染的...HTML(优先)把需要打印的 DOM 转成 HTML 字符串(或独立路由),优先使用 webPrintPdf.printHtml;对于可访问页面也可使用 printHtmlByUrl。...$refs.printArea; // 需要打印的 DOM 区域 const html = `分页符...离线;可审计需要规划算力与并发,打包字体与静态资源— 前端生成(DOM→PDF,如 html2pdf、jsPDF+html2canvas)前端自给自足,所见即所得复杂页面有偏差风险;大页面性能有限;浏览器差异明显结论

    30310

    前端生成pdf,jspdf+html2Canvas的使用(vue)

    生成单页 不存在分页内容裂开的情况,但对样式呈现不太友好,有时会出现内容偏移情况,时好时坏的,经过不断的尝试,发生偏移的时候,可以将html2Canvas的width写死,但是值具体是多少,需要你自己猜...var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 var imgWidth..."); //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if...var position = 0; //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 var imgWidth..."); //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) //当内容未超过pdf一页显示的范围,无需分页 if

    8.6K00

    angular页面打印局部功能实现方法思考

    场景 在页面显示的时候是分页现实的,当前页面只有10条数据,但是打印需要打印完整的100条数据。 并且在当前页面包含了表格之外的标题,菜单等其他元素。...后天api请求都需要带上token信息 前台页面跳转到打印页面后再跳回 1、通过缓存传递数据, 2、路由跳转到打印页面, 3、页面获取缓存数据, 4、调用浏览器打印方法, 5、操作完毕页面后退一步...效果 在打印页面里自动处理了分页显示等问题。...测试一页A4纸适合页面840px-1225px 打印文件里会自动添加页面标题和日期,下方会自动添加页面地址,不知道如何去掉 在后台生成pdf页面显示自带打印下载功能 1、后台生成PDF文件,返回二进制流...2、在不需要token信息的情况下,并且支持get请求的,可以在浏览器中直接打开该地址。或者通过a标签来实现下载和页面显示。并实现打印功能。

    1.9K20

    python之把HTML文件转换成PDF格式文档

    ,根据自动的电脑配置(32/64位)下载后傻瓜式安装即可 wkhtmltopdf下载地址:wkhtmltopdf 3、配置wkhtmltopdf ?...PDF/PS ,能够很好的节约最终生成文档所占存储空间 --manpage 输出程序的手册页-B, --margin-bottom设置页面的 底边距-L, --margin-left设置页面的...风景(Landscape)”或“肖像(Portrait)”模式, 默认是肖像模块(Portrait) --page-height页面高度-s, --page-size设置页面的尺寸,如:A4,Letter...等,默认是:A4 --page-width页面宽度 --no-pdf-compression 不对PDF对象使用丢失少量信息的压缩算法,不建议使用些参数, 因为生成的PDF文件会非常大。...results 遇到的坑: 1、图片会被分割,未解决(网上的案例说是把分页间隔给加大,但是实际效果不佳) 2、字体大小,参数中的字体大小设置不生效,未解决

    2.6K20

    一个最简单的jQuery插件编写历程

    尤其感谢带领我的很棒的前端师傅~ 废话不多说,开始。...(编写准备工具:sublime(其他只要可以开发HTML就行),jQuery包) 一、题目:编写一个类似新闻样式的小插件(即:用上这个插件,就能自动生成一个新闻样式),如图所示。...image.png 二、分析题目,整理思路,并用代码实现它 1、首先用HTML+CSS将静态页面写出来(不用想许多后续难度等等问题,一步一步做下去) 2、用JavaScript(或者jQuery)改写静态...【1】哪些数据是需要从后台传输(需要什么数据) 在这个题目中刚开始我想到的考后端传输的数据只有:1)右边数据。2)分页数据。...3)图片地址 后来随着题目的深入(重点是师傅的指点),发现可以从后端获取的数据还有:1)分页数据的长度(count)。

    94190

    【前端】使用window.print() 前端实现网页打印详细教程(含代码示例)

    一、打印基础知识 二、打印控制 2.1 使用打印样式表 2.2 使用媒介查询 2.3 内联样式使用media属性 2.4 css中使用@import引入打印样式表 2.5 打印指定区域 2.6 插入分页...最简单的打印就是直接调用window.print(),当然用 document.execCommand(‘print’) 也可以达到同样的效果。 默认打印页面中body里的所有内容。 分页符 */ @media print { h1 {page-break-before: always;} } /* 在 .footer 元素后始终插入分页符 */...@media print { .footer {page-break-after: always;} } /* 避免在 与 元素中插入分页符 */ @media...,我们可以通过去除页面模型page的外边距,使得内容不会延伸到页面的边缘,再通过设置 body 元素的 margin 来保证 A4 纸打印出来的页面带有外边距。

    6.7K31

    新产品!可视化试卷搭建平台

    之前和大家分享了很多可视化低代码和零代码的技术实现和产品设计思路, 也和大家分享了 H5-Dooring 零代码搭建平台的技术实现和未来规划, 今天继续和大家分享一下我们的新产品——橙子试卷....后台服务采用我自研的后台服务框架(可以通过配置来快速生成服务端接口, 后续会详细和大家介绍). 接下来看看橙子试卷的技术架构: 1....搭建器介绍 内置多个常用的试卷和表单组件, 支持自动批改, 分页表单配置(通过分页器来实现分步骤作答). 同时内置了多种动画交互, 可以搭建出动感的试卷和表单页面....多模式预览, 支持的预览模式有: 移动H5 Pad平板 PC大屏 A4尺寸 2. 智能分析 对投放出去的试卷/问卷, 提供开箱即用的分析页面, 进一步为用户赋能....当然它还提供了丰富的模版, 帮助大家更高效的搭建试卷和表单(正在丰富中). 目前产品还在内测阶段, 后续会更全面的和大家分享技术实现细节, 欢迎体验.

    55810

    不能满足办公场景的Banber不是好可视化

    当下,工作节奏加快,无论是个人还是企业都在不断探寻优化工作流程和提高效率的方法,如:项目管理制度、优先级划分、会前高效准备、日程提醒等等。除了方法外,不断探索有效的工具,也成了打工人的必备技能。...如果数据源绑定的是数据库,可设置报告随数据库更新自动更新。 03 下载打印存档 Banber提供了分享链接及数据门户功能,但办公场景中,依旧逃不过时不时的有纸化。...小技巧: 如果在一开始就明确了导出为A4分页的需求,可在制作编辑时,宽度设为800px,勾选分页符,按照分页符位置设计内容,以免内容因分页被截断。...06 阅读行为审计 查看阅读流水,对页面发布后的查阅人、查阅时间进行后续跟踪。 07 水印尾注 可通过设置读者与作者水印,保障数据安全。...同时,支持在简报页面上添加图文水印或者文字尾注,可应用至简报页或整个简报集。 08 后台关停 对分享或转发出去的内容可以随时取消发布,终止内容的流转。

    1.5K20
    领券