2009-07-10 5 views
0

私は、サーバー側でPDFファイルを生成し、そのファイル(バッファ、fileName-何でもよい)を送信し、生成されたPDFファイルを印刷するよう印刷ダイアログを表示したいとします。ウィンドウをトリガーする方法サーバー側(asp.net)からダイアログを印刷しますか?

私は以下のように試しました。しかし、window.print()ダイアログは表示されません。

public static void ForcedPrint(HttpResponse response, byte[] buffer, string fileName, string fileExtension) { 
     response.Clear(); 
     response.Buffer=true; 
     response.Write("<script>window.print();</script>"); 
     response.Charset=""; 
     response.Cache.SetCacheability(HttpCacheability.NoCache); 
     response.ContentType="application/pdf"; 
     response.BinaryWrite(buffer); 
     response.Flush(); 
     response.End(); 
    } 

誰か助けてもらえますか? 私は探している機能は、私は、サーバー上でPDFファイルを作成することができるはずです応答ユーザーは、生成されたファイルを印刷するダイアログを取得する必要があります。

ありがとうございます。

答えて

0

あなたがHTML文書内のPDFを埋め込む必要があるが、divの中thePDFと呼ばれ、文書内のJavaScriptコードでは、あなたが

thePDF.printWithDialog() 
を起動する必要があると言います

表示されるダイアログは、ブラウザの印刷ダイアログではなく、Adobe Readerプラグインの印刷ダイアログです。これにより、印刷前にページ等の選択が可能になる。

+0

これを取得しませんでした。いくつかのサンプルコード、または参照用のリンクを表示してください。 返信いただきありがとうございます。 –

+0

Googleの 'printWithDialog'だけです。あなたは検索結果から有用な情報を見つけるべきです。 –

1

私の知る限り、サーバー上のブラウザに印刷コマンドを生成することはできません。あなたができることは、印刷ダイアログ(window.print())でポップアップさせるjavascriptを生成することですが、それはあなたがやろうとしていることには役に立たないでしょう。

ちょっと推測しますが、PDFファイルを指すiframeを含むページを生成しようとするかもしれません。ベースページにはiframeに印刷するよう指示するjavascriptがありますか?このことができます

希望、

ダルコ