Skip to main content

View full-pixel color graphics on SIXEL-supported terminals(xterm/mlterm/DECterm/Reflection/RLogin/tanasinn/yaft)

Project description

What is SIXEL?

https://raw.githubusercontent.com/saitoha/PySIXEL/data/data/sixel_gnuplot.png

SIXEL is one of image formats for terminal imaging introduced by DEC VT series. SIXEL image data scheme is represented as a terminal-friendly escape sequence. So if you want to show a SIXEL image file, all you have to do is “cat” it to your terminal.

See also more faster high quality C implementation libsixel: https://github.com/saitoha/libsixel

https://raw.githubusercontent.com/saitoha/PySIXEL/data/data/sixel_hikari.png

I heard SIXEL was supported by some old terminal applications, such as SAS, WordPerfect.

Nowadays netpbm and Gnuplot support this.

https://raw.githubusercontent.com/saitoha/PySIXEL/data/data/sixel_ls.png

Requirements

If you want to view a SIXEL image, you have to get a terminal which support sixel graphics.

Now SIXEL feature is supported by the following terminals.

Install

via github

$ git clone https://github.com/saitoha/PySixel.git
$ cd pysixel
$ python setup.py install

or via pip

$ pip install PySixel

Usage

PySixel provides a Command line tool:

$ sixelconv [options] filename

or

$ cat filename | sixelconv [options]
  • Options:

    -h, --help                                            show this help message and exit
    -8, --8bit-mode                                       Generate a sixel image for 8bit terminal or printer
    -7, --7bit-mode                                       Generate a sixel image for 7bit terminal or printer
    -r, --relative-position                               Treat specified position as relative one
    -a, --absolute-position                               Treat specified position as absolute one
    -x LEFT, --left=LEFT                                  Left position in cell size, or pixel size with unit 'px'
    -y TOP, --top=TOP                                     Top position in cell size, or pixel size with unit 'px'
    -w WIDTH, --width=WIDTH                               Width in cell size, or pixel size with unit 'px'
    -e HEIGHT, --height=HEIGHT                            Height in cell size, or pixel size with unit 'px'
    -t ALPHATHRESHOLD, --alpha-threshold=ALPHATHRESHOLD   Alpha threshold for PNG-to-SIXEL image conversion
    -c, --chromakey                                       Enable auto chroma key processing
    -n NCOLOR, --ncolor=NCOLOR                            Specify number of colors
    -b, --body-only                                       Output sixel without header and DCS envelope
    -f, --fast                                            The speed priority mode (default)
    -s, --size                                            The size priority mode

Example

View an image file:

$ sixelconv test.png

Generate sixel file from an image file:

$ sixelconv < test.png > test.six

View generated sixel file:

$ cat test.six

Show sixel in xterm

$ curl ftp://invisible-island.net/xterm/xterm-301.tgz | tar xz
$ cd xterm-301
$ ./configure --enable-wide-chars --enable-sixel-graphics --enable-256-color
$ make
# make install
$ xterm -ti vt340 -e 'sixelconv -n16 ~/testdir/test.jpg'

Code Example

import sixel
writer = sixel.SixelWriter()
writer.draw('test.png')

Dependency

Contributer

  • @cocuh (Python3 support)

Reference

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PySixel-0.1.11.tar.gz (74.7 kB view details)

Uploaded Source

Built Distributions

PySixel-0.1.11-py3.4-macosx-10.9-x86_64.egg (71.1 kB view details)

Uploaded Source

PySixel-0.1.11-py3.3-macosx-10.9-x86_64.egg (71.2 kB view details)

Uploaded Source

PySixel-0.1.11-py2.7-macosx-10.4-x86_64.egg (71.1 kB view details)

Uploaded Source

PySixel-0.1.11-py2.6-macosx-10.4-x86_64.egg (71.2 kB view details)

Uploaded Source

File details

Details for the file PySixel-0.1.11.tar.gz.

File metadata

  • Download URL: PySixel-0.1.11.tar.gz
  • Upload date:
  • Size: 74.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PySixel-0.1.11.tar.gz
Algorithm Hash digest
SHA256 7be46be31062a8ba752d4cee568079efe015eaec42a2a27f35d9d598411e6aac
MD5 c6c0926b7402db0652352e884d6afb84
BLAKE2b-256 0df8e67ae96d3a42122e85343ac9741692183158882d0ba67ce7c5d84043c7fc

See more details on using hashes here.

File details

Details for the file PySixel-0.1.11-py3.4-macosx-10.9-x86_64.egg.

File metadata

File hashes

Hashes for PySixel-0.1.11-py3.4-macosx-10.9-x86_64.egg
Algorithm Hash digest
SHA256 e85da5852185731eac98159cb6d278522d4a76f7aca4479c6ff78ffeaf685754
MD5 916e6322e8ea00e11bd870f711a87acb
BLAKE2b-256 8fa8a6edcd995b41580bbc17f5fdfa9b40735684c84f86df13641435d93f6b79

See more details on using hashes here.

File details

Details for the file PySixel-0.1.11-py3.3-macosx-10.9-x86_64.egg.

File metadata

File hashes

Hashes for PySixel-0.1.11-py3.3-macosx-10.9-x86_64.egg
Algorithm Hash digest
SHA256 24e8a75e8fcd23b54e871e6a05937e4d5b7c6c28d76a09f199e20197511e02f7
MD5 f844a460cb27e9850a96e5f6428f4c3f
BLAKE2b-256 2ee5214af6f3ad0bfba1e16522c4fff3a7f2003ed6ef440a6c532e54bae9a880

See more details on using hashes here.

File details

Details for the file PySixel-0.1.11-py2.7-macosx-10.4-x86_64.egg.

File metadata

File hashes

Hashes for PySixel-0.1.11-py2.7-macosx-10.4-x86_64.egg
Algorithm Hash digest
SHA256 dbafbf238fd53eab3e356693d69b23a8dac3da1ec4d862af755397562d4b7efa
MD5 ab397b69ec50994448f50ac7a9021ada
BLAKE2b-256 aeefded9fdd5c437d1badb0bb6b2259bf88979df0155b0247bc957137113b5ef

See more details on using hashes here.

File details

Details for the file PySixel-0.1.11-py2.6-macosx-10.4-x86_64.egg.

File metadata

File hashes

Hashes for PySixel-0.1.11-py2.6-macosx-10.4-x86_64.egg
Algorithm Hash digest
SHA256 67d7b2d08789034b2d1dda77c257cacd265b1b3fe4b271424f209526cdbec7c7
MD5 6a6d751de30894f93a84f10f2333a06e
BLAKE2b-256 bb918449720ba2e830e287c5c6572f8b17f4fff66b08b4720ecc2233f9c460a0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page