사용자 확인없이 C# 또는 JavaScript에서 HTML 문서를 어떻게 인쇄 할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/1263171

문제

인쇄 확인 대화 창에서 "확인"을 클릭하지 않고도 프린터에 인쇄 작업을 보내고 싶습니다.

C# Code-Behind 또는 JavaScript는 괜찮을 것입니다.

그래서 ... HTML 문서를 인쇄 할 수는 있지만 인쇄 할 수 있습니다. 사용자가 클릭하지 않으면 괜찮습니다?

  • 내가 묻는 이유는 인쇄 작업이 문서를 100 번 인쇄하여 형태 값을 동적으로 삽입하기 때문입니다. (100 명에게 감사 카드를 인쇄하고 있다고 상상해보십시오. 사용자 가이 문서 각각에 대한 인쇄 작업을 확인 해야하는 경우 하나의 인쇄 작업 만 완료하는 데 시간이 걸립니다. 이제 하루에 100 개의 인쇄 작업이 들어 왔다고 상상해보십시오! 한 사람이 "괜찮아"를 10000 번 클릭하는 데 시간을 보내는 사람입니다.

메모: 인쇄 양식을 사용해야하는 사람은 한 사람이므로 브라우저에서 보안 문제를 낮추는 문제라면 효과가 있습니다. 나는 단지 100 인쇄물을 모두 확인하지 않고 통과 할 수있는 방법이 필요합니다 (100 당 1 개만 확인하는 것도 괜찮지 만 문서는 매번 변경해야합니다).

도움이 되었습니까?

해결책

모든 주요 브라우저에서 - 나는 당신이 할 수 없다고 확신합니다.

웹 브라우저 컨트롤이 포함 된 winform 앱을 만들고 사용자 확인없이 인쇄 할 수 있습니다 (올바르게 기억하면 객체에서 인쇄 메소드가 있습니다).

다른 팁

나는이 문제에 대한 해결책을 찾고있을 때이 질문을 발견했으며 적어도 내 참조를 위해 여기에 게시했습니다. Firefox에서 아주 간단하게 수행 할 수 있습니다 (v. 3.5로 테스트) :

  • Go To Age : Firefox의 주소 표시 줄에서 구성
  • 첫 번째 설정을 마우스 오른쪽 버튼으로 클릭하고 new-> boolean-> "print.always_print_silent" -> value "true"로 이동하십시오.
  • Firefox를 다시 시작하십시오

이제 JavaScript에서 Window.print ()를 호출하면 사전 확인없이 페이지가 인쇄됩니다.

원천: http://forums.mozillazine.org/viewtopic.php?f=40&t=48336&start=0

Internet Explorer 5.5 이상을 사용하는 경우 다음이 작동합니다.

function printit(){ 
    var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; 
    document.body.insertAdjacentHTML('beforeEnd', WebBrowser); WebBrowser1.ExecWB(6, -1); 
    WebBrowser1.outerHTML = ""; 
}

100 장의 카드가 모두있는 단일 페이지를 만들고 인쇄하여 적절한 페이지 브레이크가 있는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top