- читать изображения со стандартного ввода,
- установить фоновый режим как светлый так и темный,
- установить границы,
- установить выходную высоту и ширину,
- установить пользовательское измерение для выходных изображений,
- перевернуть выводимое изображение по вертикали или горизонтали,
- использовать определенные символы при создании выходного изображения ASCII,
- инвертировать изображения,
- загружать изображения из Интернета и конвертировать их,
- И т.д.
Установка Jp2a на Linux
Jp2a упакован для многих дистрибутивов Linux и доступен в репозиториях по умолчанию.
Чтобы установить Jp2a в Arch Linux и его вариантах, таких как Manjaro Linux, запустите:
$ sudo pacman -S jp2a
На Debian, Ubuntu, Linux mint:
$ sudo apt install jp2a
На Fedora:
$ sudo dnf install jp2a
На CentOS / RHEL:
$ sudo yum install epel-release
$ sudo yum install jp2a
На openSUSE:
$ sudo zypper install jp2a
Преобразование изображений в формат ASCII на Linux
Чтобы преобразовать данное изображение JPG / JPEG в символьный формат ASCII, просто запустите:
jp2a <path-to-image>
$ jp2a arch.jpg
Пример вывода:
MWXMWXWWXWWXWWXWWXWMXWMXNMNNMNNMNNMNNMNXWNXMWXWWXWWXWWXWMXWMXNMXNMNNMNNMNNMNXMNXMW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWdxWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNkccxWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNW0ccccOWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWKlccccc0WNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNXlccccccl0WWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNocccccccclXWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNdccccccccccoXWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNkccccccccccccoXWWNWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNkccccccccccccccdNWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNkccccccccccccccccdNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWXxccccccccccccccccdXWWNWWNWWNNWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNNWNOoOXNklccccccccccccccdNWNWWNWWNWWNNWNNWNNWNNWNNWWNWW NWWNNWNNWNNWNNWNNWWNWWNWWNWWNOccccok0kdcccccccccccccoXWNNWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNWWNNOcccccccccodoccccccccccccoXWWNWWNWWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWNWWNWWNkccccccccccccccccccccccccccoNWNWWNWWNWWNNWNNWNNWNNWWNWW NWWNWWNNWNNWNNWNNWWNWWNWWNkccccccccccccccccccccccccccccoXWWNWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNWWNNkccccccccccccccccccccccccccccccoKWWNWWNNWNNWNNWNNWNNWWNWW WWNWWNWWNWWNWWNWWNWWNWWNxcccccccccccccccccccccccccccccccclXWNNWNNWNNWNNWNNWNNWNNWW NWWNNWNNWNNWNNWNNWWNWWXdcccccccccccccccccccccccccccccccccclKWWNWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNWWNNdccccccccccccccccccccccccccccccccccccl0NWNNWNNWNNWNNWNNWNNWW WWNWWNWWNWWNWWNWWNWWXoccccccccccccccccdx0Oxdlcccccccccccccccl0WNWWNNWNNWNNWNNWWNWW NWWNWWNNWNNWNNWNNWWKlcccccccccccccclkXWWNWWNNOlcccccccccccccccOWWNWWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNWWNKlcccccccccccccclKNWWNWWNWWNXocccccccccccccccONWNNWNNWNNWNNWWNWW WWNWWNWWNWWNWWNWW0lcccccccccccccclXNNWNNWWNWWNWNoccccccccccccccckWNNWNNWNNWNNWNNWW NWWNNWNNWNNWNNWNkccccccccccccccccONWWNWWNWWNNWNNXccccccccccccccccdNWNWWNWWNWWNWWNN WWNWWNWWNWWNWWNkcccccccccccccccclNWNNWWNWWNWWNWWNdcccccccccloolcccdNWNNWNNWNNWWNWW WWNWWNWWNWWNWWxcccccccccccccccccoNWNNWWNWWNWWNWWNkcccccccccccoxO0OddNNNWNNWNNWNNWW NWWNNWNNWNNWXdccccccccccccccccccoWNWWNWWNWWNNWNNWkcccccccccccccclxKNXWWNWWNWWNWWNN WWNWWNWWNWWXoccccccccccccccccccccXWNNWWNWWNWWNWWNdcccccccccccccccccoOXNWNNWNNWWNWW WWNWWNWWNWXocccccccccccccccldxk00XWNNWNNWWNWWNWWNK0kxdlcccccccccccccccxKNNWNNWNNWW NWWNNWNNWKlccccccccccldxO0NWNWWNWWNWWNWWNWWNNWNNWNNWNNWXK0xdlccccccccccl0WNWWMMMMM WWNWWNWWOccccccccoxOXNWNWWNWWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNKOxoccccccccOWNWMMMMM WWNWWNWOcccccox0NNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNN0xoccccckNNMMMMM NWWNNWkccok0XNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWWNWWNWWNWWNN0xocckWNWWNW WWNWNxdOXWWNWWNWWNWWNWWNWWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNXOxxNNNWW NWWNXNNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWWNWWNWWNNWNNWNNWNNWNNWNNWWNWWNWWNWWNWWNWNXWWNN
Просто, не правда ли?
Вы можете указать несколько изображений и конвертировать их все за один раз.
$ jp2a img1.jpg img2.jpg
Эта команда преобразует данные изображения в ASCII и отобразить один за другим.
Как я уже сказал, Jp2a имеет много опций и флагов для манипулирования входными изображениями.
Давайте посмотрим на использование некоторых вариантов с примерами.
Как читать изображения со стандартного ввода
Чтобы прочитать изображения из стандартного ввода и вывести символы ASCII в стандартном выводе, используйте команду pipe, как показано ниже.
$ cat arch.jpg | jp2a -
Запомните символ дефиса (-) в конце.
Записать вывод в файл
Вместо отображения изображения ASCII в стандартном выводе вы можете записать его в файл, как показано ниже.
$ jp2a arch.jpg --output=arch_ascii
$ cat arch_ascii
Вывод изображений с определенной высотой / шириной
Вы можете преобразовать изображение в формат ASCII и выести их с определенной высотой или шириной по вашему выбору.
Для вывода с использованием определенной высоты, например 30 строк, просто выполните:
$ jp2a --height=30 arch.jpg
Ширина будет автоматически рассчитана из соотношения сторон изображения.
Аналогично, чтобы указать ширину, запустите:
$ jp2a --weight=30 arch.jpg
$ jp2a --height=20 --width=40 arch.jpg
Вывод изображений на светлом / темном фоне
Jp2a имеет опции для вывода символов ASCII на светлом и темном фоне.
$ jp2a --background=light arch.jpg
$ jp2a --background=dark arch.jpg
Преобразование изображений, отличных от JPG / JPEG
Что если у вас другой тип изображения, отличный от JPG / JPEG?
В этом случае вы можете использовать инструмент преобразования ImageMagick, как показано ниже. I
mageMagick доступен в репозиториях по умолчанию во многих дистрибутивах Linux.
$ sudo pacman -S imagemagick
На Debian, Ubuntu, Linux Mint:
$ sudo apt install imagemagick
После установки ImageMagick выполните следующую команду, чтобы преобразовать изображение данного формата PNG в формат Jpeg / Jpg, а затем преобразовать его в формат ASCII:
$ convert arch.png jpg:- | jp2a -
Произведите строгий вывод HTML
Jp2a имеет возможность производить строгий вывод XHTML 1.0.
$ jp2a --size=50x30 --html arch.jpg --output=arch.html
Пример вывода:
<?xml version='1.0' encoding='ISO-8859-1'?> <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> <html xmlns='http://www.w3.org/1999/xhtml' lang='en' xml:lang='en'> <head> <title>jp2a converted image</title> <style type='text/css'> body { background-color: black; } .ascii { font-family: Courier; color: white; font-size:8pt; font-weight: bold; } </style> </head> <body> <div class='ascii'><pre> MNWNWNWWNWNWNMXMNWNWNWWNNXWNWXMXWNWNWNNWNWNWXMXWNW NWNWNWWWWNWNWNWNWNWNWWWWkkNWNWNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWNWWWKccKWNWNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWNWWNoccoNNWNWNWNWWWWWWNWNWNWNWN WNWNWWWWWWNWNWNWNWNWWWOcccckWNWNWNWNWWWWNWNWNWNWNW WNWNWWWWNWNWNWNWNWNWWXlcccccKNWNWNWNWWWWNWNWNWNWNW WNWWWWWWWWNWNWNWNWWWNdcccccclNWNWNWWWWWWWWNWNWNWNW NWNWNWWWWNWNWNWNWNWNOccccccccxNWNWNWWWWWWNWNWNWNWN NWNWNWWWWWWNWNWNWNWXlccccccccc0WNWNWWWWWWNWNWNWNWN WWWWWWWWWWWWWWWWWWNNkccccccccclXWWWWWWWWWWWWWWWWWW WNWNWWWWNWNWNWNWNWxlkKdccccccccoNNWNWWWWNWNWNWNWNW WNWNWWWWWWNWNWNWNOccccddocccccccxNWNWWWWNWNWNWNWNW WWWWWWWWWWWWWWWWKccccccccccccccccOWWWWWWWWWWWWWWWW NWNWNWWWWNWNWNWXlcccccccccccccccccKWWWWWWNWNWNWNWN NWNWNWWWWNWNWNNdcccccccccccccccccclXNWWWWNWNWNWNWN WWWWWWWWWWWWWWxccccccccccccccccccccdNWWWWWWWWWWWWW WNWNWWWWWWNWNOccccccccccccccccccccccxNWWNWNWNWNWNW WNWNWWWWWWNWKccccccccclx0OklcccccccccOWWNWNWNWNWNW WWWWWWWWWWWXlccccccccoXWWWWXdccccccccc0WWWWWWWWWWW NWNWNWWWWNNocccccccclNWWNWNWNocccccccclXWNWNWNWNWN NWNWNWWWWNdcccccccccOWWWNWNWNKcccccccccoNNWNWNWNWN WWWWWWWWNxccccccccccXWWWWWWWWNlcccccldlcoNWWWWWWWW WNWNWWWWOcccccccccccNWWWWNWNWNocccccccx0O0NWNWNWNW WNWNWWW0ccccccccccccXWWWWNWNWNlcccccccccdKNWNWNWNW NWNWNWKlcccccccccodkXWWWNWNWNNkdocccccccccdKWNWNWN NWNWNXlccccccdk0NNWNWWWWNWNWNWNWNN0kdcccccclXNWMMM NWNWNoccclx0NNWNWNWNWWWWNWNWNWNWNWNWWN0xlccclXWMMM WNWNdclkKNNWNWNWNWNWWWWWWNWNWNWNWNWWWWWWNKklcdNWMW WNWkxKNWWWNWNWNWNWNWWWWWWNWNWNWNWNWNWWWWNWNWKxkWNW NWXNNWWNWNWNWNWNWNWNWWNWNWNWNWNWNWNWNWWNWNWNWNNNWN </pre> </div> </body> </html>
Есть еще несколько доступных опций, таких как перевернуть изображения в направлениях X и Y, установить RGB для веса преобразования в оттенках серого, использовать цвета ANSI в выводе, использовать высоту / ширину дисплея терминала и т. д.
Посмотрите раздел справки или справочные страницы, чтобы узнать, как это сделать:
$ jp2a --help
$ man jp2a