Изменить ориентацию бумаги Window.print()

Я хочу изменить режим работы (ориентация) в окне печати. Я хочу изменить его программно, но я ничего не мог найти.

window.print()

Но я не знаю, как я могу это сделать.

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

Мне это не нужно.

    function printWindow()
    {
        window.print({
        /*
        some code here?
        */
        });
}

Ответ 1

Вам нужно ввести стиль в свой документ.

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

style.type = 'text/css';
style.media = 'print';

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

head.appendChild(style);

window.print();

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

https://jsfiddle.net/vc4jjhpn/

Ответ 2

Самый простой способ изменить ориентацию печати страницы - это использование CSS

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