Web/Javascript

[Javascript] 특정영역 인쇄하기

roundfigure 2021. 2. 25. 21:48

 

자바스크립트 함수 window.print()로 인쇄를 할 수 있다.

 

전체 화면이 아닌 특정 영역만 인쇄하려면 영역을 지정해주고 인쇄함수를 실행하고

다시 기존 화면으로 변경해야 한다.

 

var div;
var initBody;

function print(id)
{
   div = document.getElementById(id);
    
   window.onbeforeprint = beforePrint;
   window.onafterprint = afterPrint;
   window.print();
}

function beforePrint()
{
   initBody = document.body.innerHTML;
   document.body.innerHTML = div.innerHTML;
}

function afterPrint()
{
   document.body.innerHTML = initBody;
}


document.body.innerHTML 값을 원하는 영역의 innerHTML 값으로 입력한 뒤

프린트하고 기존 innerHTML로 변경해준다.

위와 같은 경우에는 특정 영역은 id로 들어오는 매개변수가 된다.