У меня возникла прикладная задача - распечатать на принтере EPSON LX-300+
обложку для книжки. Но принтер матричный и чёрно-белый, а изображение цветное, если его просто так напечатать, то оттенки и цвета заменяются пиксельной заливкой различной плотности и изображение получается почти неразличимой мешаниной точек. Решение пришло логическое - печатать на чб принтере - заранее подготовленную чб картинку. В рамках linux-way я предпочёл не photoshop или gimp, а путь командной строки и пакет Image Magick
Для лучшей конвертации в черно-белое изображение сперва следует заменить красный цвет белым. Сначала попробовал -fuzz 37% но он дал худший результат, чем найденное опытным путём число 21500.
convert dm.jpg -fuzz 21500 -fill white -opaque red dm1.jpg
Другой способ:
magick dm.jpg -fuzz 11000 -fill white -draw 'color 111,26 replace' dm1.jpg
Теперь можно его конвертировать в чёрно-белое изображение. Без красного цвета горизонтальные полоски лучше выделяются и не будут наполовину утрачены.
magick dm1.jpg -alpha off -auto-threshold otsu dm2.jpg
Теперь можно уменьшить изображение для печати (как я надеялся) пиксель-в-пиксель: convert dm2.jpg -quality 100 -resize 600x800 dm3.jpg
Получается вполне различимое двухцветное изображение. При его печати принтер не проявит самодеятельности и на бумаге оно будет выглядеть точно так же.
Осталось только распечатать, но тут возникли проблемы. Утилита lpr печатает растягивая или уменьшая картинку на весь лист вне зависимости от её размера.
Утилита от IM печатает почему-то внизу листа и уменьшенного размера. Я не смог найти нужные ей ключи, либо они не заработали.
convert dm3.jpg -page A4 -gravity center ps:- | lpr Смена параметра ключа гравити (вывести все варианты convert -list gravity ) результата не даёт.
Проблему решил используя lp с явным параметром нужного уменьшения масштаба. Как просто напечатать изображение попиксельно без масштабирования или уменьшения, от левого верхнего угла листа я не нашёл.
lp -d epson-lx-300p -n1 -o position=top -o scaling=75 -o media=A4.bl dm-r3.jpg
Использованные ссылки:
Image Magick: - https://legacy.imagemagick.org/Usage/
- https://legacy.imagemagick.org/Usage/basics/
- https://legacy.imagemagick.org/discourse-server/viewtopic.php?t=18196
- https://legacy.imagemagick.org/Usage/draw/#color
- https://legacy.imagemagick.org/Usage/color_basics/#replace
- https://legacy.imagemagick.org/script/color.php
Печать:
- http://linux-bash.ru/mgrafic/104-lp-foto.html
- http://www.it.uu.se/datordrift/maskinpark/skrivare/cups/
- https://legacy.imagemagick.org/discourse-server/viewtopic.php?t=10739
|