У меня есть принтер для чашек (Epson 9 pin).Печать работает нормально, но пропускает страницу после одного отпечатка.

Я использую echo "Hi" | lpr -P myprinter для проверки.

Он печатает сообщение, но когда я снова печатаю с помощью этой команды, он пропускает текущую страницу и печатает на следующей странице (очевидно, на текущей странице много места). Любая идея?

2 ответа2

1

Сервер печати CUPS рассматривает все, что вы отправляете, как отдельную работу принтера. Это означает, что ваша строка, содержащая "Привет", является заданием принтера. По умолчанию разные задания принтера переходят на разные страницы; это объясняет, что вы сейчас получаете.

30 лет назад, когда все принтеры были похожи на ваш Epson 9pin, все было иначе. Менеджеры принтеров, такие как CUPS использовались редко. Было очень распространено посылать данные на принтер по одной строке за раз, как вы делаете со своим echo , и для принтера было естественным ждать следующей строки, не переходя на следующую страницу. Так мы печатали вещи. Если вы хотите сделать это сейчас, вам придется печатать в режиме "RAW", практически обходя управление заданиями принтера, которое выполняет CUPS. Вам также нужно подавить "подачу формы", которую CUPS по умолчанию отправляет между заданиями принтера, что вызывает изменение страницы; вам нужно будет распечатать окончательный "подачу формы" самостоятельно.

Я предлагаю вам посмотреть здесь, вы можете найти свой ответ уже ждет.

0

Добавление переключателя l решило проблему.

echo "Hi" | lpr -l -P myprinter

-l Switch Указывает, что файл печати уже отформатирован для места назначения и должен быть отправлен без фильтрации. Эта опция эквивалентна "-o raw".

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .