asp.netとc#.netを使用して印刷ダイアログボックスを表示せずにWebページを直接印刷するにはどうすればよいですか私のコードは
window.frames['iFramePdf'].print();
印刷ボタンをクリックしてPDFファイルを生成し、iframeを表示して、印刷ダイアログボックスなしでそのPDFファイルを自動的に印刷します
ありがとうヘマント
悪意のあるページが (たとえば) 純粋な黒のページにページを印刷するのを防ぐために、通常、ブラウザーからこれを行う方法はありません。ポップアップ ダイアログを受け入れるか、html を使用しないでください。
これは(おそらく)クライアント側であるため、ASP.NETはまったく含まれていません。
もちろん、別のアプローチは、専用のサービスを使用してページをプルダウンし、そのサービスから印刷することです (実際、私の最後の雇用主は、多くの印刷にこのアプローチを使用していましたが、問題なく動作します)。ブラウザ。
ActiveXコントロールとVBscriptを使用して、印刷ダイアログボックスをバイパスできると思います。
<script language='VBScript'>
Sub Print()
OLECMDID_PRINT = 6
OLECMDEXECOPT_DONTPROMPTUSER = 2
OLECMDEXECOPT_PROMPTUSER = 1
call WB.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,1)
End Sub
document.write "<object ID='WB' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0- A96B-00C04FD705A2'></object>"
</script>
これは、デフォルトの印刷機能に置き換わるものです。次に、javascriptを使用して印刷をトリガーできます
window.print();