2009-07-10 5 views
0

Ich möchte eine PDF-Datei auf der Serverseite generieren und dann als Antwort diese Datei senden (Puffer, Dateiname - was auch immer funktionieren mag) und einen Druckdialog anzeigen, um den Benutzer zu bitten, die generierte PDF-Datei zu drucken.Wie Fenster zu starten Drucken von Server-Seite (asp.net)?

Ich habe etwas wie unten versucht. Es wird jedoch kein window.print() -Dialog ausgelöst.

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(); 
    } 

Kann mir bitte jemand dabei helfen? Die Funktion, die ich suche, ist, dass ich in der Lage sein sollte, PDF-Datei auf dem Server zu erstellen, und als Reaktion darauf sollte der Benutzer einen Dialog zum Drucken der generierten Datei bekommen.

Vielen Dank im Voraus.

Antwort

0

Sie benötigen die PDF im HTML-Dokument, sagen wir in einem div thePDF genannt einbetten und in JavaScript-Code im Dokument, müssen Sie

thePDF.printWithDialog() 
aufzurufen

Der angezeigte Dialog ist der Druckdialog des Adobe Reader-Plugins und nicht der Druckdialog des Browsers. Dies ermöglicht die Auswahl von Seiten usw. vor dem Drucken.

+0

Ich habe das nicht bekommen. können Sie mir bitte einen Beispielcode oder einen Link als Referenz zeigen. Danke für die Antwort. –

+0

Rufen Sie Google einfach mit 'printWithDialog' an und Sie sollten einige nützliche Informationen aus den Suchergebnissen finden. –

1

Soweit mir bekannt ist, können Sie keinen Druckbefehl für den Browser auf dem Server generieren. Das meiste, was Sie tun können, ist, das Javascript zu generieren, das es mit einem Druckdialog (window.print()) poppt, aber das würde Ihnen nicht mit dem helfen, was Sie versuchen zu tun.

Nur spekulieren, aber Sie können versuchen, eine Seite mit einem iframe, dass auf die PDF-Datei zeigt, und in der Basis-Seite haben das Javascript, dass der Iframe zum Drucken sagt generieren?

hoffe, das hilft,

Darko

Verwandte Themen