0
我正在將多個div內容導出到PDF中。我想在將數據導出到PDF時將每個div內容顯示在單獨的頁面中。爲了實現此目的,我試圖添加如下代碼所示的內容,但仍然無法顯示單個頁面中的每個div內容(如演示文稿中所示)當用戶點擊導出按鈕時,PDF被下載,並可以看到div內容顯示在單個頁面中):https://plnkr.co/edit/KvkVlYmmmJiZ71sghb1l?p=preview(工作演示plunker,它顯示PDF的單個頁面中的每個div內容)。未能將div添加到PDF中.each()函數
source.append($('<div>'));
source.append($(this));
source.append($('</div><!--ADD_PAGE-->'));
完整的js代碼:
app.controller("listController", ["$scope",
function($scope) {
$scope.employees = [{pageIndex: "randomText1",pageHeader: "This should be shown in page1"},
{pageIndex: "randomeTexthere",pageHeader: "This should be shown in page2"},
{pageIndex: "someRandomText",pageHeader: "This should be shown in page3"},
{pageIndex: "four",pageHeader: "This is shown in page4"},];
$scope.export = function() {
var pdf = new jsPDF('landscape');
var source = $('#append-source');
$('.myDivClass').each(function(){
var html = $(this);
source.append($('<div style="background-color: yellow">'));
source.append(html));
source.append($('</div><!--ADD_PAGE-->'));
//var html = "<div>"+$(this) + "</div><!--ADD_PAGE-->";//the code is broken with this line
});
console.log(source);
pdf.addHTML(
source, 0, 0, {
pagesplit: true
},
function(dispose){
pdf.save('test3.pdf');
}
);
}
}
]);
演示plunker(未能在。每個添加新的div()):https://plnkr.co/edit/uUiK0Mv8mn88JEEyI3rf?p=preview
,因爲它沒有加載網頁上顯示的一些特殊字符我不能使用pdf.fromHTML。請使用您的建議代碼找到示例演示:https://plnkr.co/edit/mb6a9M2yi0iQwL2JA0dn?p=preview,它包含一些黃色突出顯示的文本,當導出爲PDF時,顏色不會導出,同樣,我會看到一些問題fromHTML,這就是我使用addHTML而不是fromHTML的原因。沒有修改實際邏輯的任何建議都會有幫助。 – user8838953
@ user8838953,使用addHTML函數更新答案。 –