Программно установить ориентацию страницы печати в альбомную - PullRequest
3 голосов
/ 21 июля 2009

У нас есть веб-приложение ASP.NET C # со ссылкой «для печати».Есть ли способ программно установить ориентацию, чтобы пользователь мог просто нажать кнопку печати?

Ответы [ 3 ]

6 голосов
/ 21 июля 2009

Это то, что должно быть сделано на стороне клиента (с использованием JavaScript / CSS).

К сожалению, JavaScript не имеет возможности сделать это изменение.

У CSS есть возможность указать альбомную печать через директиву @page:

@page {
    size: landscape;
}

CSS Paged Media хорошо поддерживается в Chrome v15 + и Opera v15 +, частично поддерживается в Firefox v19 +, IE8 + и во всех версиях Edge. Однако он вообще не поддерживается Safari

https://caniuse.com/#feat=css-paged-media

3 голосов
/ 21 июля 2009

Краткий ответ: «Нет». Это преднамеренное ограничение браузеров, что сама страница не может переопределять пользовательские настройки печати. Это должно предотвратить злоупотребление, которое я представляю, и вызывает все виды головных болей.

Один из возможных способов обойти это - вывести свою страницу в формате PDF и представить ее. Вы можете управлять настройками печати для страницы PDF.

1 голос
/ 21 июля 2009

Нет, нет программного способа установки ориентации. Это полностью обрабатывается браузером.

Лучшее, что вы можете сделать, это сказать «мы рекомендуем вам распечатать страницу с альбомной (или книжной) ориентацией» и надеяться, что пользователь знает, как это сделать самостоятельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...