2009-07-27 4 views
1

Ich baue einen Kalender in ASP.NET mit Jquery, Und ich versuche Print zu implementieren. Ich kann einfach HTML oder Bilder ohne Probleme drucken. Aber ich kann nicht herausfinden, wie man einen Druck wie Google Kalenderdruck baut.Wie funktioniert Google Kalenderdruck?

Wenn Sie die Taste Drucken in „Kalender Druckvorschau“ Druckdialog, die mehr Optionen (Cross-Browser) hat erscheint, Einige, wie dieser Druck-Dialog von einem einfachen Browser Druck unterscheidet, Und sie scheinen mehr Kontrolle zu haben wie Landschaftsdruck zum Beispiel einstellen.

Jeder weiß, wie man das umsetzt?

Dank

+0

Kalender, nicht Kalender –

Antwort

2

Es ist nur ein Popup-Fenster mit einigen Optionen, die auf serverseitiges Skript geschrieben werden, die ein PDF-Dokument erzeugt.

Sie könnten

<link media="print" rel="stylesheet" type="text/css" href="main.css" /> 

verwenden etwas Ähnliches ohne serverseitige Skript, das Bild/pdf erzeugt zu tun.

Beachten Sie die media = "print", dh das angegebene Stylesheet wird beim Drucken der Seite verwendet. Sie können dort benutzerdefinierte CSS-Regeln festlegen (z. B. Navigation verbergen, Kalender auf Papier schön aussehen lassen).

EDIT:

Als Antwort auf einen Kommentar. Wenn Sie den HTML-Code in PDF konvertieren, sieht das genauso aus. Wenn Sie dieses Formular in Google Kalender senden, nehmen sie alle diese Optionen und generieren PDF von ihnen. Wenn Sie Landschaft wählen, wird die Seite gedreht und alles neu berechnet, so dass es zur Seite passt. Um es für Sie zu vereinfachen, zeichnen sie ein Bild auf der Serverseite entsprechend den Optionen, die Sie einreichen, und stellen Sie es in pdf ein.

Es ist nicht so einfach, wenn Sie es vorher nicht getan haben. Ich würde mit css und JavaScript auf dieser Druckseite herumspielen und schauen, ob ich etwas Ähnliches nachahmen kann, indem ich zwischen Querformat und Hochformat mit JS und CSS-Regeln wechsle (mache zwei Buttons - "Querformat", "Hochformat", wenn der Benutzer darauf klickt) Sie ändern die CSS-Regeln für Ihren Kalender so, dass er der gegebenen Papiergröße entspricht. Auch wenn Sie mit CSS nicht vertraut sind, wird es schwer sein.

Es gibt keine definitive Antwort, der Pfad, den Google genommen hat, ist sehr nett, aber es ist nicht so einfach zu reproduzieren.

Weitere Informationen in Kommentaren.

+0

Ich kopiere den Kalender html in ein neues Fenster mit einer window.print() - Taste. Also muss ich HTML in pdf konvertieren und die pdf drucken? Weißt du, wie kann ich das tun? Und wie kann ich den PDF-Druck steuern, wie Landschaftsdruck einstellen? Danke. – SirMoreno

+0

Aktualisierte Antwort. –

+0

Vielen Dank für die Antwort. Ich habe die CSS-Option überprüft und ich habe keine Möglichkeit gefunden, Landschaftsdruck zu setzen, (Sie können nur den Stil ändern). – SirMoreno