Ubuntu Linux – Медленная печать с помощью команды lp

Вопрос или проблема

Я спрашивал здесь несколько месяцев назад, как печатать и проверять результаты с помощью команды lp (CUPS) в Ubuntu.

После нескольких попыток я смог печатать обычные текстовые файлы. Мне удалось напечатать, выбрав некоторые настройки (двусторонняя печать, размер бумаги, источник бумаги и т.д.)

Я нашёл драйверы для Linux здесь (файлы PPD): https://www.openprinting.org/download/PPD/

Теперь у меня небольшая проблема: когда я отправляю файл .pdf на принтер (Ricoh MP Aficio 1106 EX, подключенный по TCP-IP), печать идет медленно, требуется более 30 секунд, чтобы отправить файл на принтер. Файлы .txt печатаются в момент их отправки. У вас есть идеи, как это решить?

Я пытался изменить сокет устройства на 9100 порт, но это только вызвало ошибки.

EDIT1:

Я пробовал использовать команду LPR вместо LP:

lpr -sPrinterIP /absolute/path/to/file.pdf

Но работает также медленно.

EDIT2:

Я установил qz-tray, своего рода сервер печати/API. Когда я пробую демо PDF, он тоже печатает медленно.

EDIT3:
Я сейчас попробовал с помощью стандартного PDF просмотрщика (EVINCE), потому что думал, что у меня нехватка памяти, и распечатал тот же файл. Все прошло хорошо, на нормальной скорости.

EDIT4:
Я пробовал некоторые другие драйверы (обычные и рекомендованные производителем принтера), скорость та же.

EDIT5:

Я нашел эту ссылку: https://en.opensuse.org/SDB:Using_Your_Own_Filters_to_Print_with_CUPS

Но не могу понять, если фильтрация “раздражает меня”, потому что мой принтер является PCL-принтером (а я использую драйвер pxl…). Мог бы кто-нибудь объяснить мне это?

EDIT 6:

Я нашел источник проблемы: когда я печатаю pdf файл только с текстом, все работает отлично. Но когда я отправляю pdf файл с изображением, печать заходит в предварительный процесс (я не могу полностью утверждать это) и требуется более 30 секунд, чтобы отправить любой пакет на принтер (это проверено с помощью Wireshark).

Я могу предположить, что файл PPD (драйвер, предоставленный поддержкой Ricoh) содержит что-то в коде, что отправляет какую-то команду для обработки файла.

Я нашел это в файле PPD. Я думаю, что это корень проблемы замедления:

*%========== Ghostscript Command line ==========


*FoomaticRIPCommandLine: "(printf '\033%%-12345X@PJL\n@PJL JOB\n@PJL SET COPIES=&copies;\n'%G|perl -p -e "s/\x26copies\x3b/1/"
(gs -q -dBATCH -dPARANOIDSAFER -dNOPAUSE -dNOMEDIAATTRS -dNOINTERPOLATE %B%A%C %D%E | perl -p -e "s/^\x1b\x25-12345X//" | perl -p -e "s/\xc1\x01\x00\xf8\x31\x44/\x44/g"
(printf '@PJL\n@PJL EOJ\n\033%%-12345X&apos"
*End

Я нашел эту статью https://lists.linuxfoundation.org/pipermail/printing-foomatic/2012/002791.html, которая подтверждает мои идеи: драйвер ppd обрабатывает все файлы с помощью Ghostscript.

EDIT 7:
Поддержка Ricoh сказала мне, что команда печати “lp” может использовать “стандартный PDF просмотрщик” для обработки файла, что замедляет процесс печати. Я не знаю, как это проверить.

Большое спасибо.

Смените драйвер. Почему? Рекомендуемый драйвер RICOH для Linux использует неэффективный файл PPD. Это замедляет предварительную обработку файлов. (Драйверы для Windows также могут использовать файл PPD, и это замедляет процесс, если файл не оптимизирован)

Я использовал драйверы Gutenprint, чтобы решить эту проблему. Реальная работа сейчас заключается в том, чтобы получить правильный драйвер для ваших принтеров, потому что драйверы Gutenprint не существуют для всех машин RICOH (и у других производителей такая же проблема). Ближайший драйвер к gutenprint для 1106EX – это драйвер Aficio MP 1100. Но будьте осторожны, когда отправляете команды lp: у коробок для бумаги разные названия.

Ответ или решение

Проблема медленной печати через команду lp в Ubuntu, как было описано в вашем случае, представляет собой распространённую сложность, особенно когда дело касается формата PDF и несоответствий между драйверами и устройствами печати. Ниже приведены шаги и рекомендации по решению этой проблемы.

Анализ проблемы

На основании вашего описания можно выделить несколько ключевых моментов:

  1. Быстрая печать текстовых файлов: Печать текстовых документов выполняется мгновенно, что может указывать на то, что основная проблема возникает при преобразовании и отправке PDF-файлов на принтер.

  2. Замедление при печати PDF: Вы отметили, что когда вы отправляете PDF-файл, печать осуществляется медленно, особенно если файл содержит изображения. Это может быть связано с тем, как драйвер (PPD-файл) обрабатывает данные для печати.

  3. Использование неподходящих драйверов: Некоторые драйверы могут неэффективно обрабатывать PDF с изображениями, что замедляет процесс печати. Это подтверждается вашей попыткой использовать различные драйверы и обнаружением, что использование драйвера Gutenprint улучшило ситуацию.

Рекомендации по решению проблемы

  1. Замена драйвера: Как вы уже обнаружили, использование драйвера Gutenprint вместо рекомендуемого драйвера Ricoh может решить проблему. Gutenprint часто более оптимален для работы с различными форматами файлов, включая PDF. Для вашего принтера Ricoh MP Aficio 1106 EX вам следует использовать драйвер, соответствующий модели Aficio MP 1100.

  2. Проверка PPD файла: Убедитесь, что PPD-файл, используемый вашим принтером, оптимизирован для обработки PDF. Поскольку вы упомянули о наличии кода, использующего Ghostscript для рендеринга файлов, убедитесь, что ваше оборудование поддерживает GDI (Graphics Device Interface) или другой эквивалент, который может работать быстрее.

  3. Настройки Ghostscript и PJL: Возможно, вам нужно будет изменить или оптимизировать параметры Ghostscript в PPD-файле. Отключение ненужных опций или фильтров может улучшить скорость обработки. Обратите внимание на элементы PJL (Printer Job Language), которые могут создавать задержки.

  4. Тестирование с различными PDF-файлами: Попробуйте протестировать разные типы PDF-файлов, включая простые текстовые PDF, многостраничные документы и PDF с высоким разрешением изображений. Это поможет вам лучше понять, как драйвера обрабатывают различные файловые форматы.

  5. Мониторинг сети: Поскольку ваш принтер подключен по TCP/IP, используйте инструменты мониторинга сети, такие как Wireshark, чтобы отслеживать трафик и обнаруживать, где возникают задержки. Это может помочь в выявлении проблем с сетью или конфигурацией.

  6. Обновление системы и ПО: Проверьте, обновлены ли у вас все пакеты, связанные с CUPS, Ghostscript и драйверами принтера. Иногда обновления могут включать исправления ошибок и улучшения производительности.

Заключение

Проблема медленной печати с использованием команды lp в Ubuntu, вероятно, связана с использованием неэффективного PPD-драйвера для вашего принтера. Рекомендация по замене драйвера на Gutenprint, а также тестирование конфигураций и мониторинг сети должны помочь значительно улучшить скорость печати PDF-файлов. Если после всех этих шагов проблема будет сохраняться, стоит рассмотреть возможность обращения в службу поддержки Ricoh для получения специализированной помощи.

Оцените материал
Добавить комментарий

Капча загружается...