静默打印

本文讲述了在处理扫码枪扫码并打印PDF需求时遇到的问题,包括iframe内容无法直接打印、跨域问题及性能问题。通过引入pdf.js将PDF内容转化为DOM结构,再利用print.js进行打印,但面临性能问题。最终解决方案是后台返回二进制数据流,结合Chrome的静默打印配置完成无用户交互的打印任务。详细步骤包括在about:flags中修改设置和创建带有特定参数的Chrome快捷方式。
摘要由CSDN通过智能技术生成

首先, 为了需求要做一个扫码枪扫码,打印pdf的需求,为了规避用户那一下点击操作,balabalabalabala。。。。。这是背景。

最初,用iframe来显示,看见东西出来了,我以为打印尽在眼前了,但是特么没想到的是和黄土高坡一样,面对面不过数尺,握手还要走几十公里,根本没有想象中那么简单好不好!!!然后试了试window.print()方法,发现太鸡肋,根本就不能打印我要的元素好不好。

然后,找了很多的资料,看到一个iframe.contentWindow.print()这种方法,我欣喜若狂,找到这个元素简直和玩一样好吗!但是我翻来覆去找不到print这个方法。我决定试一试,我换着颤抖的心情保存看代码,看着热加载转圈圈,然后控制台告诉我跨域问题,想想也能说得通,pdf的路径在阿里云生成的,于是我放下了手里的西瓜刀,然后试着用在项目里面引入一个iframe,指向我的一个静态页面,在这个静态页面里面在加载一个iframe,我想,我自己找自己不算跨域了吧,爱因斯坦说绕着大树光速跑就能**自己嘛!结果还是跨域问题,然后问题就变成怎么解决跨域问题了,stack overflow 跨域问题,然后又是跨域问题,草我崩溃了。容我出去抽一根烟.................

想过来,想过去,iframe毕竟是一个iframe,有没有方法能转化成

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值