본문 바로가기 메뉴 바로가기

랑스티비

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

랑스티비

검색하기 폼
  • 분류 전체보기 (813)
    • 하랑이랑 (38)
      • 2015년 (8)
      • 2018년 (5)
      • 2019년 (14)
      • 랑스랑 그림 (11)
    • 이것저것 (716)
      • 말씀묵상 (673)
      • 티스토리 (14)
      • 컴퓨터-인터넷 (15)
      • 네이버TV (2)
      • 유튜브 (7)
    • SERVER (10)
      • LINUX (6)
      • Windows (4)
      • Oracle (0)
    • LANGUAGE (25)
      • JAVA (1)
      • Jquery (2)
      • Android (8)
      • Java Script (9)
      • C# (4)
      • Python (1)
    • DBMS (14)
      • MS-SQL (12)
      • MY-SQL (1)
    • TOOL (7)
  • 방명록

티스토리 뷰

LANGUAGE/Java Script

window.print() 속성 사용

랑스티비 2019. 4. 29. 13:53

window.print() 속성 사용

 

웹사이트를 제작할때 여러분은 프린트 지원을 어떻게 하는가? 아마 대부분 자바스크립트에서 제공하는 print() 메서드를 사용할 것이다.
window.top.print();
하지만 이 메서드를 사용하면 여러분은 보지 않아도 되는 프린트 대화상자가 뜨는 것과 인쇄되는 페이지의 헤더와 풋터를 제어할 수 없다. 이들을 어떻게 제어해야 하는가?
아쉽게도 우리가 알고있는 자바스크립트나 ASP로는 이를 제어할 수 없다. 다른 프로그래밍 언어를 사용하여 프린터를 직접 제어하도록 컴포넌트를 구축해야 한다. 여러분이 이를 직접 만든다는것도 성가신 일 중의 하나일 것이다.
다행히도 여러분이 자유롭게 가져다 쓸 수 있는 프린트 컴포넌트가 있다. MeadCo에서 만든 ScriptX라는 컴포넌트이다. 여러분은 이 컴포넌트를 클라이언트에서 직접 참조하여 사용할 수 있고 또한 다운을 받아서 여러분의 서버에 설치하여 사용할 수 있다. 여기서는 클라이언트에서 직접 참조하여 사용하는 것에 대해서 보겠다.
우선 여러분의 HTML문서에 개체를 추가하여야 한다.
<!-- MeadCo ScriptX -->

 <object id=factory style="display:none"

 classid="CLSID:1663ed61-23eb-11d2-b92f-008048fdd814"

 codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=6,1,429,14">

 </object> 
위와 같은 코드를 문서에 삽입하면 MeadCo 사이트의 ScriptX 개체를 참조하게 된다. (ASP 에서 CreateObject나 클라이언트 스크립트에서 new ActiveXObject를 호출하지 않는다.) 이제 이를 호출하여 프린트하는 스크립트를 추가한다.
<script>

 function printWindow() {

 factory.printing.header = "This is MeadCo"

 factory.printing.footer = "Printing by ScriptX 5.x"

 factory.printing.portrait = false

 factory.printing.leftMargin = 1.0

 factory.printing.topMargin = 1.0

 factory.printing.rightMargin = 1.0

 factory.printing.bottomMargin = 1.0

 factory.printing.Print(false, window)

 }

 </script> 
header는 페이지 상단에 인쇄되는 부분이며 footer는 페이지 하단에 인쇄되는 부분을 말한다. portrait을 false로 하면 가로 출력이되며 true로 하면 세로 출력을 한다. 그 아래의 4개는 상하좌우의 여백을 조정하며 Print 메서드에서 첫번째 인수는 프린트 대화상자를 표시할 것인지를 나타내는 것으로 false로 되어있는 경우 대화상자를 표시하지 않고 기본 프린터로 바로 출력을 한다. 두번째 인수는 전체 HTML 페이지를 인쇄할 것인지 아니면 특정 프레임을 출력할 것인지를 설정한다.
기타 다른 기술적인 부분에 대해서는 MeadCo의 Tech Docs 부분을 참고하기 바란다. 다음은 실제 이 컴포넌트를 사용하여서 프린트할 수 있는 예제이다. 전체 소스를 복사하여 HTML 문서에 저장하여 실행시킨다.
=================================================================================

<HTML>
<HEAD>
<TITLE>Print Sample</TITLE>
</HEAD>
<script language="xxjavascript">
function printWindow() {
factory.printing.header = "여기는 머릿글입니다."
factory.printing.footer = "여기는 바닥글입니다."
factory.printing.portrait = true
factory.printing.leftMargin = 30.0
factory.printing.topMargin = 30.0
factory.printing.rightMargin = 30.0
factory.printing.bottomMargin = 30.0
factory.printing.Print(false, window)
}
</script>
<BODY>
<object id=factory style="display:none" classid="CLSID:1663ed61-23eb-11d2-b92f-008048fdd814" codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=6,1,429,14">
</object>
<p>
This is Test Page...
</p>
<p>
안녕하십니까?<br>
korea.internet.com 입니다.
</p>
<input type="button" name="print" value="Print This Page..." [안내]태그제한으로등록되지않습니다-xxonClick="printWindow();">
</BODY>
</HTML>
 
저작자표시 (새창열림)

'LANGUAGE > Java Script' 카테고리의 다른 글

iframe resize  (0) 2019.05.30
즐겨찾기 추가및 시작페이지 설정  (0) 2019.05.30
윈도미디어플레이어의 PARAM속성 활용법  (0) 2019.04.29
[자바스크립트]유용 소스 26가지  (0) 2019.04.26
PC 인지 모바일인지 알려주는 자바스크립트  (0) 2019.03.14
'LANGUAGE/Java Script' 카테고리의 다른글
  • iframe resize 2019.05.30
  • 즐겨찾기 추가및 시작페이지 설정 2019.05.30
  • 윈도미디어플레이어의 PARAM속성 활용법 2019.04.29
  • [자바스크립트]유용 소스 26가지 2019.04.26
more
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • 네이버 TV - 랑스티비
  • 유튜브 - 랑스티비
  • 네이버 블로그 - 랑스티비
TAG
  • 트릭아트
  • 퍼즐
  • 숲속 놀이터
  • 네이버tv
  • nonstop knight 2
  • 그림자 글자
  • 3d
  • 입체글자
  • 유튜브
  • 그리기
  • 랑스티비
  • 하랑이랑
  • 3D 그리기
  • 하랑이
  • 키즈
  • 큰파일 나누기
  • 논스톱 나이트 2
  • 강원도
  • 김요셉
  • 티스토리
  • 구글
  • 로그파일 쪼개기
  • 스킨수정
  • 하랑
  • trick art
  • 입체그림
  • 켄싱턴플로라
  • 입체글씨
  • three-dimensional
  • 키즈카페
more
«   2026/02   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함

Blog is powered by 랑스티비 / Designed by 랑스티비

티스토리툴바