[英]pdf (mpdf) file gets corrupted in javascript
我有一个 web 应用程序,需要动态生成 pdf。 数据在 javascript 中收集,并通过发布请求发送到服务器。 这里mpdf用来生成一个pdf。 如果我在本地保存文件: php $mpdf->Output($filename, \Mpdf\Output\Destination::FILE);
有用。
但是如果我将它发送到浏览器php $mpdf->Output($filename, \Mpdf\Output\Destination::DOWNLOAD);
并在 jquery 回调中获取 output 执行以下操作(借用自https://nehalist.io/downloading-files-
jQuery.post(my_axax_url, data, function(data) {
var blob = new Blob([data], { type: 'application/pdf' });
var l = document.createElement('a');
l.href = window.URL.createObjectURL(blob);
l.download = 'test.pdf';
document.body.appendChild(l);
l.click();
});
下载的 pdf 是空的(空白页),并且作者信息已损坏(看起来像是编码问题)。 我跑了https://www.datalogics.com/products/pdftools/pdf-checker/ ,它只给了我 javascript 生成的 pdf 是“损坏的文档”。
我希望,这是一个简单的问题。 我习惯了 php 和文本文档,而不是 pdf。
谢谢!
尝试将以下内容添加到 php 脚本的开头,这可能是某种编码问题:
ob_clean();
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="test.pdf"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.