Автор Гілка: Виведення графіки у консоль  (Прочитано 5035 раз)

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Доброго вечора :)
По трохи освоюю консоль Лінукс та Сі/C++, та ось вирішив спробувати скористатися головною особливістю консолі Лінукс - графічним походженням, це те що знати в консолях інших ОС важко. Тож маю питання - якими стандартними засобами можна вивести зображення (готове чи намалювати своє) в консоль? Як то можна зробити?
« Змінено: 2012-12-05 20:19:03 від HetmanNet »
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Виведення графіки у консоль
« Відповідей #1 : 2012-12-05 21:12:38 »
Я таким страждав вже дуже давно — році в 2005, коли сидів на LFS, тож сучасного стану речей не знаю.

Тоді були драйвери nvidix та cvidix для mplayer’а, що виводили у консоль, причому один з них можна було примусити виводити *поза* текстом, що виглядало круто, але було непрактично — нічорта не розбереш на терміналі.

Загалом же — я збирав SDL з драйвером DFB (direct framebuffer — бібліотека така) а всім іншим програмам казав виводити через SDL. Відповідно, використовував links2 чи elinks — щось з них вміло працювати чи то з dfb чи то з sdl. mplayer також має драйвери dfb та sdl, тож перегляд відео працював. На той час драйвер dfb (чи sdl, не пам’ятаю) для gtk+ не був допиляний до робочого стану, тож gqview і подібне не завелося, наскільки пам’ятаю (як зараз — не цікавився).

Що пам’ятаю — написав за допомогою directfb на С переглядач зображень. Потім, правда, переніс його на perl/SDL.
« Змінено: 2012-12-05 21:17:08 від ISBear »

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Re: Виведення графіки у консоль
« Відповідей #2 : 2012-12-05 21:26:10 »
Я таким страждав вже дуже давно — році в 2005, коли сидів на LFS, тож сучасного стану речей не знаю.

Тоді були драйвери nvidix та cvidix для mplayer’а, що виводили у консоль, причому один з них можна було примусити виводити *поза* текстом, що виглядало круто, але було непрактично — нічорта не розбереш на терміналі.

Загалом же — я збирав SDL з драйвером DFB (direct framebuffer — бібліотека така) а всім іншим програмам казав виводити через SDL. Відповідно, використовував links2 чи elinks — щось з них вміло працювати чи то з dfb чи то з sdl. mplayer також має драйвери dfb та sdl, тож перегляд відео працював. На той час драйвер dfb (чи sdl, не пам’ятаю) для gtk+ не був допиляний до робочого стану, тож gqview і подібне не завелося, наскільки пам’ятаю (як зараз — не цікавився).

Що пам’ятаю — написав за допомогою directfb на С переглядач зображень. Потім, правда, переніс його на perl/SDL.

Як раз мені фонове зображення в консолі не потрібно, в konsole це можна робити без будь-якої мороки. Мене цікавить вивід графіки саме у саму консоль, бо текст то добре, але є випадки коли тексту замало і графіка є незамінна.
« Змінено: 2012-12-05 21:45:12 від HetmanNet »
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Виведення графіки у консоль
« Відповідей #3 : 2012-12-05 21:40:30 »
Або показувати малюнок самому за допомогою sdl/dfb (і, відповідно, весь вивід/позиціювання тексту теж обробляти самому), або aalib/caca + ncurses, або вивід у html і використання links2/elinks (див вище).
« Змінено: 2012-12-05 21:42:23 від ISBear »

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Re: Виведення графіки у консоль
« Відповідей #4 : 2012-12-05 21:45:43 »
1. А чим відрізняється просто Linux framebuffer від direct framebuffer ?
2. У konsole не буде проблем з виводом графіки у консоль через framebuffer?
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Виведення графіки у консоль
« Відповідей #5 : 2012-12-05 23:06:40 »
directfb — ліба, що надає непоганий інтерфейс до лінуксового фреймбуферу, ото й усе.

Konsole — емулятор *текстового* терміналу. Або використовуйте aalib/caca, або виводьте у html, або використовуйте sdl — у консолі воно використає dfb, у іксах — ікси.
« Змінено: 2012-12-05 23:08:23 від ISBear »

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Re: Виведення графіки у консоль
« Відповідей #6 : 2012-12-05 23:15:27 »
directfb — ліба, що надає непоганий інтерфейс до лінуксового фреймбуферу, ото й усе.

Konsole — емулятор *текстового* терміналу. Або використовуйте aalib/caca, або виводьте у html, або використовуйте sdl — у консолі воно використає dfb, у іксах — ікси.

Можна питання, щодо html, його можливо зобразити у консолі? Бо чесно кажучи вперше зустрічаюся з такою можливістю виведення у консоль. Як то зробити?
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Виведення графіки у консоль
« Відповідей #7 : 2012-12-05 23:36:52 »
Ні, але його можна відкрити у браузері, а як я вже казав, у голій консолі є браузери, що вміють показувати графіку через dfb. Плюс він має форми, тобто є в деякій мірі інтерактивним. А також, якщо графікою можна знехтувати, його можна переглядати у чисто текстовій консолі у переглядачах на кшталт lynx/links/elinks.

Якщо вас цікавить не власне можливість відображення графіки у системній консолі лінукс (тій, що C-A-F1-6), а саме відображення малюнків у будь-якому терміналі — тоді лише один вихід — aalib.

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Re: Виведення графіки у консоль
« Відповідей #8 : 2012-12-06 00:27:50 »
Мене цікавлять обидві можливості :) Думав, що це трохи простіше та рішення буде одне на обидва випадки.
Бо зображення графіки у системній консолі мені потрібно для пристроїв невеликої потужності та великої з потребою високої швидкодії, де можливості обмежуються використанням системної консолі з тих чи інших міркувань.
А ось можливість вивести графіку у konsole для програм, що працюватимуть вже на повноцінному комп'ютері. Переважно програми для розрахунків та моделювання.
« Змінено: 2012-12-06 00:28:42 від HetmanNet »
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Виведення графіки у консоль
« Відповідей #9 : 2012-12-06 02:09:15 »
То використовуйте sdl — тільки у іксах у вас графіка буде окремо від малюнків (окреме вікно, або на весь екран), а у системній консолі — буде відповідно або графіка, або текст (але ніхто не заважає вмикати графіку лише коли треба щось показати). Зате малювання відбуватиметься однаково в обох випадках.

Відсутній HetmanNet

  • Графоман
  • ****
  • дописів: 412
  • Карма: +1/-0
  • Fedora, CentOS, RHEL, KDE
Re: Виведення графіки у консоль
« Відповідей #10 : 2012-12-09 23:05:56 »
Дякую, буду пробувати
Віддамся на один вечір в хороші дівочі руки.. не дорого, в у.о. .. Якщо сподобається, то залишуся безкоштовно назавжди..