【发布时间】:2023-02-11 12:46:54
【问题描述】:
我正在尝试将 React 组件导出为 PDF 我采取的步骤是
- 使用 html2canvas 将组件转换为图像
- 正在创建一个 pdf
- 将图像附加到 pdf
该组件有一些图像,我通过调用它们的 API 获得其 URL,图像的 src 是外部域 url html2canvas 为外部域图像抛出 cors 错误
下面是html中的img元素
这是转换的代码块
html2canvas(containerDiv, { allowTaint: false, useCORS: true, logging: true, }) .then(function (canvas) { const imgData = canvas.toDataURL("image/png"); pdf.addImage(imgData, "PNG", 0, 0, width, height); pdf.save(${companyName}.pdf); }) .catch((err) => console.log(err));
已经尝试过的方法:
- 将 crossorigin 设置为 true 或 anonymous
- url的base64转换并添加到图片src
- 将随机查询字符串添加到图像 src
- 在 hmtl2canvas 选项中 AllowTaint 为真(不工作)
如果有任何快速解决方法是可能的
【问题讨论】:
标签: javascript html reactjs jspdf html2canvas