关于js打印图片,第一页空白问题

前提

我使用原生js进行一个图片打印,原本是img标签上面绑定id后预览不生效,然后就在img上面套了一层div,发现是可以了,但发现第一页的一个内容是为空的,但是如果正常打印div里面的文字的话是没问题的

原生js打印如下代码所示

print(){
    const el = document.getElementById("box")
    var newWindow=window.open("","");
    var docStr = el.innerHTML;
    newWindow.document.write(docStr);
    newWindow.document.close();
    newWindow.print();
    newWindow.close();
},

解决

后面使用了print-js进行一个功能的应该实现

安装依赖

npm install print-js --save

如果安装报错,请留意node版本这块的问题

printjs使用

//这个引用我也很疑惑,因为都没用到

import print from "print-js";

//调用打印机
const onPrinter = () => {
  let businessImage = document.getElementById("businessImage");
  //printable 是demo,type 是格式,style是打印样式
  //因为我是网络图片就不需要用html2canvas来截图了
  //你们可以通过html2canvas 拿来进行应该dome的一个截图,拿到url然后放进去
  printJS({
    printable:"图片地址也是url",
    type: "image",
    style: `@media print { @page {size: auto; margin: 0; } body{margin:0 5px}}`,
  });
};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值