vue 打印,blob两种方式

方式一

const ifr = document.createElement('iframe');
    const date = new Date().getTime();
    ifr.style.frameborder = 'no';
    ifr.style.display = 'none';
    ifr.style.pageBreakBefore = 'always';
    ifr.setAttribute('id', 'printPdf' + date);
    ifr.setAttribute('name', 'printPdf' + date);
    ifr.src = event.data.data;
    document.body.appendChild(ifr);
    const printIframe = document.getElementById('printPdf' + date);
    setTimeout(() => {
      printIframe.contentWindow?.print();
    }, 1000);
    window.URL.revokeObjectURL(ifr.src); // 释放URL 对象

其中 ifr.src是就是流文件地址,格式为

blob:http://10.0.8.94:81/1dc58787-745d-42b9-87b5-559c5150e8c5

方式二

   <iframe id="printIframe" hidden height="{0}"></iframe>

  const printIframe = document.getElementById('printIframe');
    printIframe.src = event.data.data;
    setTimeout(() => {
      printIframe.contentWindow?.print();
    }, 1000);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容