$("#btnPdf").on("click", function () {
html2canvas(document.getElementById("gridData"), {
onrendered: function(canvas) {
// 캔버스를 이미지로 변환
var imgData = canvas.toDataURL('image/png');
var imgWidth = 190; // 이미지 가로 길이(mm) A4 기준
var pageHeight = imgWidth * 1.414; // 출력 페이지 세로 길이 계산 A4 기준
var imgHeight = canvas.height * imgWidth / canvas.width;
var heightLeft = imgHeight;
var doc = new jsPDF('p', 'mm');
var position = 10;
// 첫 페이지 출력
doc.addImage(imgData, 'PNG', 10, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
// 한 페이지 이상일 경우 루프 돌면서 출력
while (heightLeft >= 20) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, 'PNG', 10, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
}
// 파일 저장
doc.save('sample_A4.pdf');
}
});
});
pdf 라이브러리 등록
jspdf.min.js - pdf다운로드
html2canvas.min.js - 컨버터
bluebird.min.js - ie 적용
es6-promise.auto.js
'강좌 > JSP' 카테고리의 다른 글
jstl 역순출력 (0) | 2019.02.28 |
---|---|
InputBox 에서 엔터키입력 (0) | 2016.08.10 |
getParameter 메소드 만들어 쓰기 (0) | 2016.03.17 |
파일 업로드 (0) | 2016.02.01 |
JSTL forEach 변수 2개 사용할 경우 (0) | 2015.10.13 |