В моем проекте MVC у меня есть следующая таблица html:
<div id="tableToPrint">
<table border="0" id="tbl" cellspacing="25">
<tr class="te">
<th align="left">DATE</th>
<th align="left">METHOD</th>
<th align="left">DEPOSIT</th>
<th align="left">WITHDRAWAL</th>
</tr>
<!-- ko foreach: accountInfo -->
<tr>
<td valign="top"><span data-bind="text: moment(new Date(orderDate())).format('MM/DD/YYYY')"></span></td>
<td valign="top"><span data-bind="text: type"></span> </td>
<td class="deposit" valign="top"><span data-bind="text: $root.formatCurrency(deposit())" id="deposit"></span></td>
<td valign="top"><span data-bind="text: $root.formatCurrency(withdrawal())"></span> </td>
</tr>
<!-- /ko -->
<tr class="last">
<td valign="top"> </td>
<td valign="top"> </td>
<td valign="top"><span data-bind="text: $root.totalDeposit()"></span></td>
<td valign="top"><span data-bind="text: $root.totalWithdrawal()"></span></td>
</tr>
</table>
</div>
У меня есть кнопка «Экспорт в PDF», которая работает правильно, но теряет дизайн, она экспортируется без всех стилей.
Это код mt javascript, который экспортирует таблицу в pdf с помощью библиотеки jspdf:
self.exportToPdf = function () {
var newPdf = new jsPDF();
var specialElementHandlers = {
'#tableToPrint': function (element, renderer) {
return true;
}
};
// newPdf.setFontSize(16);
var html = $("#tableToPrint").html();
var margins = {
top: 80,
bottom: 60,
left: 40,
width: 522
};
newPdf.fromHTML(
html, // HTML string or DOM elem ref.
margins.left, // x coord
margins.top, { // y coord
'width': margins.width, // max width of content on PDF
'elementHandlers': specialElementHandlers
});
newPdf.save("YourTable.pdf");
}
Есть ли способ сохранить исходный дизайн таблицы в экспортированном pdf? Или, по крайней мере, спроектировать его с помощью кода javascript, который экспортирует таблицу в pdf? Заранее спасибо.
JsPdf
плагина, потому что я не вижу никакой документации по нему. Но очевидные причины, по которым есть несколько плагинов, в том, что они требуют всегоstyles to be given inline
, а не класса. Некоторые плагины делают снимок экрана и превращают его в PDF-файл, в котором не будет проблем со стилями. - person Rajshekar Reddy   schedule 21.09.2016