Вы должны установить высоту auto
, а затем, как только изображение будет сгенерировано, установить высоту на желаемую высоту. Таким образом, вы можете захватить весь контент.
Добавьте эту строку document.getElementById("content").style.height="auto";
после получения offsetWidth
и offsetHeight
.
И добавить эту строку document.getElementById("content").style.height="100px";
после завершения html2canvas
.
$(document).ready(function() {
$('#print').click(function() {
var currentPosition = document.getElementById("content").scrollTop;
var w = document.getElementById("content").offsetWidth;
var h = document.getElementById("content").offsetHeight;
document.getElementById("content").style.height="auto";
html2canvas(document.getElementById("content"), {
dpi: 300, // Set to 300 DPI
scale: 3, // Adjusts your resolution
onrendered: function(canvas) {
var img = canvas.toDataURL("image/jpeg", 1);
var doc = new jsPDF('L', 'px', [w, h]);
doc.addImage(img, 'JPEG', 0, 0, w, h);
doc.addPage();
doc.save('sample-file.pdf');
}
});
document.getElementById("content").style.height="100px";
document.getElementById("content").scrollTop = currentPosition;
});
});
Если он не загружается из приведенного выше фрагмента, вы можете проверить его здесь
Обновление 1
Добавить p
тег на каждой странице jsfiddle