首页 新闻 会员 周边

前端打印添加当前页和总页数

0
悬赏园豆:200 [待解决问题]

项目上有一个需求,需要在打印的时候加上当前页和总页数,本人用的打印插件是vue-print-nb,打印模板主要是表头一些内容以及表格明细行,,但是行高和宽度都不是固定的,并且还有批量打印的功能,请问这种情况怎么计算页码和总页数啊,附上打印模板:

ljhbky的主页 ljhbky | 初学一级 | 园豆:2
提问于:2024-03-12 13:53

一张A4纸的宽高比是1:√2,你可以在页面内容确定之后通过页面的宽高算一下总共需要打印几页,然后再自己写dom,内容就是具体的页码,位置就绝对定位到每一页你需要的位置,打印机的默认纸张边距可能会对数字产生一点影响,自己调整一下,核心就是在打印之前准备好自己需要打印的内容

NewSilen 1个月前
< >
分享
所有回答(1)
0
czd890 | 园豆:14412 (专家六级) | 2024-03-12 13:56

我没有会员

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 14:12

买了个会员这个不对我看过了

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 14:16

@ljhbky:
csdn 真的是好贱啊, 我刚看的时候还不要钱...
你要实现的是页眉/页脚功能了. 差不多.

支持(0) 反对(0) czd890 | 园豆:14412 (专家六级) | 2024-03-12 14:39

@czd890: 也不是这个,因为我还涉及到批量打印,如果打印很多份,勾选这个的话那个总页数就是全部张数,我想获得单份的总页数和当前页,只能自己计算,但是我目前还没有找到计算的逻辑,分页好难啊

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 14:59

@ljhbky: 那估计得定义打印用的模板(固定高度,底部自定义实现的页脚), 然后根据计算好的高度设置好页码后, 在发送到打印机打印.

支持(0) 反对(0) czd890 | 园豆:14412 (专家六级) | 2024-03-12 15:08

@czd890: 是的就是这块没有头绪,因为我的高度不是固定的,我也没办法设置一页要打印多少行

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 15:13

@ljhbky: 手动分页, 计算要打印的内容高度, 然后分割到每一页.
可以在搜索一下, 看看有没有更好的方案, 打印这玩意好多年没写过了.😂

div print-object
  div page-1    固定的 a4高度 刚好是打印机分页的第1页  
    div 小于a4高度的内容
    div 页脚  1/2
  /div
  div page-2  固定的 a4高度 刚好是打印机分页的第2页 
    div 小于a4高度的内容
    div 页脚  2/2
  /div
  div page-3    固定的 a4高度 刚好是打印机分页的第3页  
    div 小于a4高度的内容
    div 页脚  1/1 # 批量打印的第二部分第一页.
  /div
/div
支持(0) 反对(0) czd890 | 园豆:14412 (专家六级) | 2024-03-12 15:19

@czd890: 好吧谢谢你哈,我再搜搜看吧,都搜一天了哈哈

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 15:23

@czd890: 谢谢谢谢

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-12 15:31

@czd890: 这个有点没看明白麻烦您能稍微再详细说明一下吗,您分享给我的链接我也看了,和我们现在的需求还是有些不同,因为我的表格行高是不固定的,没办法确认一页要打印多少行,,文章里面是有固定的,困扰我好久了这个问题

支持(0) 反对(0) ljhbky | 园豆:2 (初学一级) | 2024-03-30 08:56

@ljhbky: 通过行里面的内容计算高度,比如10个字用满一行,拿12个字的时候这一行肯定要算有2行(不完全是2行高度, 要计算padding,margin)的高度

支持(0) 反对(0) czd890 | 园豆:14412 (专家六级) | 2024-03-31 07:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册