Можно ли принудительно настроить принтер (размер бумаги) в JavaScript? - PullRequest
12 голосов
/ 10 октября 2009

Мне нужно распечатать страницы из веб-приложения на карточках размером 8 x 4 дюйма. IE не сохраняет настройки печати от одной печати к другой, так есть ли способ принудительно настроить печать?

Ответы [ 2 ]

12 голосов
/ 10 октября 2009

Вы можете сделать это в CSS, используя директиву @media print, js не требуется. Вам нужно будет рассчитать, какие размеры относятся к карточке 4x8, и выполнить все позиционирование самостоятельно, но это сработает. Кроме того, поскольку это CSS2, он не будет работать в IE6. (см. Комментарии Джоэла)

@media print {
  body {
    width: /*width of index card*/
    height: /*height of index card*/
  }
  /* etc */
}
9 голосов
/ 17 сентября 2015

Посмотрите на примеры CSS3 из http://www.w3.org/TR/css3-page/#size:

/* style sheet for "A4" printing */
@media print and (width: 21cm) and (height: 29.7cm) {
     @page {
        margin: 3cm;
     }
}

/* style sheet for "letter" printing */
@media print and (width: 8.5in) and (height: 11in) {
    @page {
        margin: 1in;
    }
}

/* A4 Landscape*/
@page {
    size: A4 landscape;
    margin: 10%;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...