Go to file
2017-07-09 22:03:16 +02:00
src/main/java More nbsp cleanup 2017-04-06 21:45:18 +02:00
LICENSE Create LICENSE 2016-06-23 14:53:20 +02:00
README.md Update README.md 2017-07-09 22:03:16 +02:00

TerminalImageViewer

Small Java* program to display images in a (modern) terminal using RGB ANSI codes and unicode block graphic characters.

Algorithm (for each 4x8 pixel cell mapped to a unicode block graphics character):

  1. Find the color channel (R, G or B) that has the biggest range of values for the current cell
  2. Split this range in the middle
  3. Average the colors above and below and create a corresponding bitmap for the cell
  4. Compare the bitmap to the assumed bitmaps for various unicode block graphics characters

*) C++ port available at at https://github.com/stefanhaustein/tiv

Usage

javac TerminalImageViewer.java

java TerminalImageViewer [-w <width-in-characters>] <image-filename-or-url>

Common problems

  • If you see strange horizontal lines, the characters don't fully fill the character cell. Remove additional line spacing in your terminal app
  • Wrong colors? Try -256 to use a 256 color palette instead of 24 bit colors or -grayscale for grayscale.

Examples

Examples

If multiple images match the filename spec, thumbnails are shown.

Thumbnails