Труба STDOUT для изображения?
Недавно я хотел запустить терминальную команду, такую как "git show
Я немного погуглил и нашел несколько хитрых уловок, особенно с командой import, но ничего, что могло бы надежно захватить STDOUT и сохранить его как изображение.
Итак, я подумал, что попрошу мозг довериться здесь. У кого-нибудь есть проверенное и проверенное решение для Linux?
2 ответа
Как преобразовать текст в изображение уже ответили здесь: https://stackoverflow.com/questions/3826379/image-magick-converting-text-to-image-is-there-a-way-to-center-the-text-to-t Этот ответ предоставляет различные варианты того, как это сделать с помощью инструментов ImageMagick.
Обратите внимание: это будет работать надежно только в том случае, если вывод вашей команды - простой текст.
Если есть какое-либо необычное форматирование (например, ncurses), результаты могут быть совершенно непредсказуемыми.
Частичный ответ, перечисляющий некоторые возможности:
Существует несколько программ, которые вы можете использовать для рендеринга текста в изображения, например:
convert
от ImageMagick/GraphicsMagickpbmtext
из NetPBM, рендеринг в Portable Bitmappaps
, рендерит в Postscript с помощью Pangoenscript
, делает для Postscript
Но преобразование другого формата в PNG не должно быть проблемой.
Из них только enscript
поддерживает цвета через "специальные побеги". Это не то же самое, что экранирование терминала, поэтому вы должны конвертировать их с помощью awk/perl и т. Д.
Другой вариант - сделать все это в xterm и на скриншоте.
Как вы можете видеть, все это довольно сложно, по желанию требуются нетривиальные усилия, чтобы заставить их работать. Что неудивительно, потому что в основном вы хотите воспроизвести всю часть рендеринга вашего терминала.
Может быть проще просто сохранить сам вывод и получить его в терминале, когда вы захотите посмотреть на него.