• ベストアンサー

Webアプリケーション ファイルの印刷

Webアプリケーション初心者です。 ブラウザにファイル(html)を表示せずに印刷する方法を探しています。 ボタンまたはリンクをクリックしたときに"右クリック-対象を印刷"と同じような動作をさせることは出来ますでしょうか? この他に良い方法がありましたら教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yusukey
  • ベストアンサー率56% (17/30)
回答No.2

表示しないで、っていうのは難しいかもしれませんね。 やったことはありませんが、見えない IFrame (サイズが 0 x 0)を使って、そのIFrame の中で JavaScript で print() を呼び出すというのはいかがでしょう。 以下の様なのを作って動作することを確認しました。 ---print.html <html> <body> <button onclick="document.getElementById('theIframe').src='print.html'">プリントする</button> <iframe id="theIframe" width="0" height="0" src="about:blank"></iframe> </body> </html> --- ---print.html <html> <body onload="print()"> このページがプリントされます。 </body> </html> ---

jtakato
質問者

お礼

ありがとうございます。 上記を参考に作成したのですが上と下のファイルの名前が同じになっているのですが、上のほうの名前を変えて動かしてみたのですが、自分の方法が間違っていたのか「プリントする」のボタンだけが印刷されてしまいました。

その他の回答 (2)

  • yusukey
  • ベストアンサー率56% (17/30)
回答No.3

すいません、ファイル名がまちがってました。 上のファイルがindex.htmlで、下のファイルがprint.html(プリントする対象のhtml) です。 index.html を開いて、「プリントする」ボタンを押すと print.html がプリントアウトされます。 MacのSafariで動作確認しました。 ---index.html <html> <body> <button onclick="document.getElementById('theIframe').src='print.html'">プリントする</button> <iframe id="theIframe" width="0" height="0" src="about:blank"></iframe> </body> </html> --- ---print.html <html> <body onload="print()"> このページがプリントされます。 </body> </html> ---

jtakato
質問者

お礼

お礼が大変遅くなってしまい申し訳ありません。 大変参考になりました。 いろいろ試行錯誤して作成しています。 ありがとうございました。

回答No.1

お世話になります。 http://www.gac.jp/article/index.php?stats=question&category=3&id=14186&command=msg&PHPSESSID=b534b1f7144d97b7c7314fbfcabae41f これを見る限りでは,ちょっと難しそうですね。

jtakato
質問者

お礼

ご回答ありがとうございます。 ちょっと無理そうですね。 策としてmoveToを使って画面外に表示してVBScriptの印刷ダイアログを出さずに印刷する方法を作ってみました。 あとはツールを使う方法ですかね。

関連するQ&A