Коротко — причин чаще всего две: в Linux стоит не тот PPD/фильтр (драйвер), или включены «тонер‑сейв» / низкая плотность в опциях CUPS/HPLIP/PPD. Реже — особенности рендеринга шрифтов/растра Ghostscript. Что делать дальше — пошагово:
1) Проверка принтера/тонера
- Напечатайте встроенную тест‑страницу принтера (всё аппаратно) — если она бледная → проблема в принтере/тонере.
- Если аппаратная тест‑страница нормальная, значит проблема в драйвере/софте.
2) Узнать текущие драйвер/опции
- Выведите список принтеров и драйвера:
lpstat -p -d
lpinfo -v
- Посмотреть доступные опции и их значения (важно для корректной команды):
lpoptions -p ИМЯ_ПРИНТЕРА -l
В выводе ищите опции типа toner-save, print-quality, resolution, density, Sharpness/Intensity/Contrast и т.п.
3) Попробовать сменить/обновить драйвер
- В CUPS (http://localhost:631 → Printers → Modify Printer) попробуйте переключиться на другой PPD: «HP LaserJet Pro M201n (recommended)», «Generic PCL 6/PCL XL», «Generic PCL 5e» или PostScript PPD (если есть). Часто hpcups даёт лучше, чем hpijs, или наоборот — попробуйте оба.
- Обновите HPLIP до последней версии (через репозиторий дистрибутива или с https://developers.hp.com/hp-linux-imaging-and-printing).
4) Выключить режим экономии/увеличить плотность в драйвере
- Через lpoptions:
lpoptions -p ИМЯ_ПРИНТЕРА -o toner-save=false
lpoptions -p ИМЯ_ПРИНТЕРА -o print-quality=5
lpoptions -p ИМЯ_ПРИНТЕРА -o Resolution=600dpi
(имена опций зависят от PPD — сначала выполните lpoptions -l чтобы узнать точные имена и допустимые значения.)
- В hplip/hp-toolbox или интерфейсе CUPS поставьте «Darkness/Intensity» выше, отключите «Toner save».
5) Тестирование рендеринга
- Распечатайте ту же страницу из Windows и из Linux: сравните PDF → возможно, Linux рендерит шрифты иначе (антиалиасинг/hinting). Попробуйте печатать через другой просмотрщик (Evince, Okular, Acrobat через Wine) или печатать «как изображение».
- Можно также выполнить конвертацию PDF в PS и печатать PS, чтобы обойти часть фильтров:
pdftops файл.pdf файл.ps
lp -d ИМЯ_ПРИНТЕРА файл.ps
6) Логи и отладка
- Включите подробные логи CUPS:
sudo cupsctl --debug-logging
sudo systemctl restart cups
(распечатайте тест и смотрите /var/log/cups/error_log)
Это даст подсказки, какой фильтр/ppd используется.
7) Если хочется — пришлите выводы
- Выведите и пришлите сюда:
lpoptions -p ИМЯ_ПРИНТЕРА -l
lpstat -p -d
/var/log/cups/error_log (часть с моментом печати)
Я помогу подобрать точные опции или PPD.
Резюме: начните с аппаратной тест‑страницы, затем проверьте текущий PPD и опции (toner‑save, density/print‑quality, resolution), попробуйте альтернативный драйвер (PCL vs PS) и обновите HPLIP. Если пришлёте lpoptions -l и модель (имя принтера в lpstat), подскажу конкретные команды.