Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Печать строк на принтере (https://javascript.ru/forum/misc/31456-pechat-strok-na-printere.html)

Vit 08.09.2012 12:30

Печать строк на принтере
 
Доброго всем.
Ситуация следующая: Есть матричный принтер, на котором на любой бумажке-какашке (формат самый непредсказуемый) нужно распечатать текст типа

Участок 123
Превезено 12
обработано 145
Начальник Пупкин Ку. Ку.
Телефон Ыдцатьнадцать


Вопрос: Могу ли я послать такие данные используя JS из браузера на печать (принтер подключен локально и стоит по умолчанию)?
Я знаю про функцию print() но насколько я понимаю речь идет о распечатке всей страницы, а это мне не годится.

Предполагаемый браузер: Опера, Файерфокс последних версий.

bes 08.09.2012 12:51

выводите нужные данные в отдельное окно и печатайте оттуда
http://javascript.ru/forum/dom-windo...razheniya.html

Vit 08.09.2012 13:57

Без отдельно созданного окна никак?

bes 08.09.2012 14:28

вроде нет, узнаете другой способ, отпишите сюда в тему

Vit 08.09.2012 17:29

Понял. Попробую еще порыть интернет, спасибо.

FINoM 08.09.2012 17:38

Айфрейм не подойдет?

FINoM 08.09.2012 17:39

И есть еще такая штука как @media print http://htmlbook.ru/css/media

Aetae 09.09.2012 06:35

А в чём проблема с окошком? Заодно и предпросмотр. А после принта автозакрытие.
C media print более извращённый вариант, понадобится что-то типа:
@media print {
  body {
    background: #fff;
  }
  body *{
    display:none;
  }
  #msg-box *{
    display:inline;
  }
}

Естесно msg-box должен быть прямо в body.

Vit 10.09.2012 18:55

Цитата:

Айфрейм не подойдет?
Еще не пробовал.
Цитата:

Заодно и предпросмотр.
Ну в теории да, но на практике это операторам не просто не нужно, но и затормаживат работу.
Нужно быстро посылать на принтер, так как данных таких будет много.
Печать в моем задании предполагается часто и коротко. Поэтому хотелось бы исключить все лишнее.
Предпросмотр в данном случае скорее лишний, ибо до печати пользователь видит что печатает.

bes 10.09.2012 20:11

по умолчанию фокус на кнопке "печать", так что останется лишь нажать на "ввод"

если не открывать отдельное окно, то можно вывести все данные в div поверх всего документа используя window.onbeforeprint, по window.onafterprint div убрать (хотя их поддержка слабовата)
https://developer.mozilla.org/en-US/...M/window.print


Часовой пояс GMT +3, время: 20:45.