Я хочу сохранить HTML-файл в pdf
файл одним нажатием кнопки. Проблема в том, что я получаю проблему после ajax
вызова:
% PDF-1.7% 8 0 obj << / Тип / Страница / Родительский 1 0 R / LastModified
(D: 20190328213806 + 02'00 ') / Ресурсы 2 0 R / MediaBox [0.000000
0,000000 595,276000 841,890000] / CropBox [0,000000 0,000000 595,276000 841,890000] / BleedBox [0,000000 0,000000 595,276000 841,890000] / TrimBox [0,000000 0,000000 595,276000 841,890000] / ArtBox [0,0000
0.000000 595.276000 841.890000] / Содержание 9 0 R / Повернуть 0 / Группа << / Тип / Группа / S / Прозрачность / CS / DeviceRGB >> / Аннотации [6 0 R 7 0 R
] / PZ 1 >> endobj 9 0 obj <> stream x ۏ q
| `ⱯVU} е) .erI66 $ ^ $ d3
] Эйб "Ig ΙKwU |? GYS | ро ߿ Gvqy |] H ȄQFDSF @. '} е8
B @ UH @ MMCgP8g [т? Р # @ Е = Pg
KysLm.0qC {[} TlgkY? 3K9g% Mq =
0vwG} Обь ڃ л / туалет | Ойю;? ݽ л
? _QŁJG ׇ ~ а К ^ г -!, L3 -ZeW 1D AI # s
Я нашел подобную проблему здесь - Tcpdf на контроллере Laravel 3
Но я не знаю, что такое Response::make
? Есть идеи как это исправить? Спасибо.
Код:
JQuery / Ajax
$(document).on("click", "#testButtonClick", function() {
savePDF($("#test").html(), "Test1", "Test2");
});
function savePDF(info, name, data) {
$.ajax({
type: "post",
url: "includes/worker",
data: {"test": info, "name": name, "data": data},
xhr: function() {
try {
if (window.ActiveXObject) {
return new window.ActiveXObject("Microsoft.XMLHTTP");
}
} catch(e) { }
return new window.XMLHttpRequest();
},
success: function(result) {
console.log(result);
},
error: function(response) {
}
});
}
PHP
require_once("tcpdf.php");
$pdfData = new TCPDF('P', PDF_UNIT, PDF_PAGE_FORMAT, true, "UTF-8", false); //
$pdfData->SetCreator("Test..");
$pdfData->SetTitle("Test..");
$pdfData->SetHeaderData("", "", PDF_HEADER_TITLE, PDF_HEADER_STRING);
$pdfData->setHeaderFont(Array(PDF_FONT_NAME_MAIN, "", PDF_FONT_SIZE_MAIN));
$pdfData->setFooterFont(Array(PDF_FONT_NAME_DATA, "", PDF_FONT_SIZE_DATA));
$pdfData->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdfData->SetMargins(PDF_MARGIN_LEFT, "5", PDF_MARGIN_RIGHT);
$pdfData->setPrintHeader(false);
$pdfData->setPrintFooter(false);
$pdfData->SetAutoPageBreak(true, 10);
$pdfData->setFontSubsetting(true);
$pdfData->AddPage();
$pdfData->SetFont("freeserif", "", 10);
$pdfData->writeHTML(iconv("Windows-1251", "UTF-8", "Это тест...."));
$pdfData->Output("Test.pdf", "D");