簡體   English   中英

pdf (mpdf) 文件在 javascript 中損壞

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM