Change Window.print() paper orientation

I want to change paper mode (orientation) on the window print. I want to change it programatically but i could not find anything.


But i do not know , how can i do it.

@media print{@page {size: landscape}}

I dont need it.

    function printWindow()
        some code here?

You need to inject style to your document.

var css="@page { size: landscape; }",
    head = document.head || document.getElementsByTagName('head')[0],
    style = document.createElement('style');


if (style.styleSheet){
  style.styleSheet.cssText = css;
} else {



//don't forget to find and remove style if you don't want all you documents stay in landscape

the simplest way to change page print orientation is by using following CSS

@page {
    size: 25cm 35.7cm;
    margin: 5mm 5mm 5mm 5mm; /* change the margins as you want them to be. */

This one worked for me, was generating an A1 sales summary sheet

var head = '<html><head>' 
      + $("head").html() 
      + ' <style>body{background-color:white !important;}@page { size: 84.1cm 59.4cm;margin: 1cm 1cm 1cm 1cm; }</style></head>';

//Additional code here......

Just inject the current head css so that your data does not lose the previous styling

The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .
Read More:   Using spread operator to update an object value

Similar Posts