Javascript로 화면 PDF로 저장 jspdf html2canvas > 팁앤테크

본문 바로가기

사이트 내 전체검색

뒤로가기 팁앤테크

Javascript로 화면 PDF로 저장 jspdf html2canvas

본문

<script type="text/javascript" src="<?php echo G5_PLUGIN_URL?>/pdf/jspdf.min.js"></script>
<script type="text/javascript" src="<?php echo G5_PLUGIN_URL?>/pdf/html2canvas.min.js"></script>

<script>
$(document).ready(function() {
$('#savePdf').click(function() { // pdf저장 button id
 
    html2canvas($('#pdfDiv')[0]).then(function(canvas) { //저장 영역 div id
           
           // 캔버스를 이미지로 변환
           var imgData = canvas.toDataURL('image/png');
                
           var imgWidth = 190; // 이미지 가로 길이(mm) / A4 기준 210mm
           var pageHeight = imgWidth * 1.414;  // 출력 페이지 세로 길이 계산 A4 기준
           var imgHeight = canvas.height * imgWidth / canvas.width;
           var heightLeft = imgHeight;
           var margin = 10; // 출력 페이지 여백설정
           var doc = new jsPDF('p', 'mm');
           var position = 0;
              
           // 첫 페이지 출력
           doc.addImage(imgData, 'PNG', margin, position, imgWidth, imgHeight);
           heightLeft -= pageHeight;
                
           // 한 페이지 이상일 경우 루프 돌면서 출력
           while (heightLeft >= 20) {
               position = heightLeft - imgHeight;
               doc.addPage();
               doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight);
               heightLeft -= pageHeight;
           }
        
           // 파일 저장
           doc.save('file-name.pdf');    
    });
}); 
});
</script>

추천0

첨부파일

댓글목록 0

등록된 댓글이 없습니다.

전체 825건 1 페이지
게시물 검색
Copyright (c) 株式会社YHPLUS. All rights reserved.

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒171-0014 東京都豊島区池袋2-41-5 アーバン154 8F
050-5539-7787
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

PC 버전으로 보기