2008-10-27 16 views
9

In unserer Anwendung ermöglichen wir Benutzern, Seiten zu drucken. Dazu geben wir eine Schaltfläche an, die beim Klicken die window.print() -Funktion aufruft.
Einige der Seiten würden besser aussehen, wenn sie im Querformat und nicht im Hochformat gedruckt würden. Gibt es eine Möglichkeit, das Seitenlayout von JavaScript zu steuern?Kann ich das Seitenlayout bei Verwendung von window.print() ändern?

Update: Anraten Nach gegeben ich hier für „CSS-Landschaft“ in Google sah, fand er den following article, die Möglichkeiten von CSS-ly zeigte definieren Landschaft:

Antwort

8

Sie sollten ein Druck-Stylesheet verwenden.

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

Weitere Informationen ...

How to print only parts of a page?

Edit: Querformat zu zwingen, offenbar ist der Standard size: landscape, aber ich habe keine Ahnung, wie gut, dass in allen Browsern unterstützt wird.

+0

Danke für das Update. Laut dem Artikel, mit dem ich in meiner Frage verlinkt habe, wird das in FireFox und Opera unterstützt, aber nicht in IE –

2

es, indem ein Drucksheet thusly mit CSS tun:

<style type="text/css" media="print">@import url("/inc/web.print.css");</style> 
2

Ich denke, Ihre Frage ist nicht so sehr über die Verwendung von CSS zum Definieren von Druckstilen, sondern um den Druck als Querformat statt als Porträt zu erzwingen?

CSS 2 'Größe' definiert, aber ich glaube nicht, das widly unterstützt: http://www.w3schools.com/css/css_ref_print.asp

CSS 3 eine bessere Druckkontrolle hat, aber wieder nicht widly unterstützt.

1

Dies ist leider immer noch nicht über den Browser möglich. Für Internet Explorer gibt es eine ActiveX control, die es tut.

Andernfalls wäre Ihre beste Wette, die Option einer PDF-Version zum Drucken anzubieten.

Verwandte Themen