Provided by: libsixel-bin_1.5.2-2_amd64 bug

NAME

       img2sixel - image converter to DEC SIXEL graphics

SYNOPSIS

       img2sixel [ -options ] imagefiles
       img2sixel [ -options ] < imagefiles

DESCRIPTION

       img2sixel converts various images into high quality DEC SIXEL image format.

COMMAND-LINE OPTIONS

       img2sixel has the following command-line options:

       -o, --outfile
            specify output file name (default:stdout).

       -7, --7bit-mode
            generate a sixel image for 7bit terminals or printers (default).

       -8, --8bit-mode
            generate a sixel image for 8bit terminals or printers.

       -p COLORS, --colors=COLORS
            specify number of colors to reduce the image to (default=256).

       -m FILE, --mapfile=FILE
            transform image colors to match this set of colorsspecify map.

       -e, --monochrome
            output monochrome sixel image.  this option assumes the terminal background color is black.

       -k, --insecure
            allow to connect to SSL sites without certs (enabled only when configured with --with-libcurl)

       -i, --invert
            assume the terminal background color is white.  make sense only when -e option is given.

       -I, --high-color
            output 15bpp sixel image

       -u, --use-macro
            use DECDMAC and DEVINVM sequences to optimize GIF animation rendering.

       -n MACRONO, --macro-number=MACRONO
            specify  an number argument for DECDMAC and make terminal memorize SIXEL image. No image is shown if
            this option is specified

       -C COMPLEXIONSCORE, --complexion-score=COMPLEXIONSCORE
            specify an number argument for the score of complexion correction.  COMPLEXIONSCORE  must  be  1  or
            more.

       -g, --ignore-delay
            render GIF animation without delay.

       -S, --static
            render animated GIF as a static image.

       -d DIFFUSIONTYPE, --diffusion=DIFFUSIONTYPE
            choose diffusion method which used with color reduction.
            DIFFUSIONTYPE is one of them:
            auto     -> choose diffusion type automatically (default)
            none     -> do not diffusion
            fs       -> Floyd-Steinberg method
            atkinson -> Bill Atkinson's method
            jajuni   -> Jarvis, Judice & Ninke
            stucki   -> Stucki's method
            burkes   -> Burkes' method

       -f FINDTYPE, --find-largest=FINDTYPE
            choose  method  for finding the largest dimension of median cut boxes for splitting, make sense only
            when -p option (color reduction) is specified.
            FINDTYPE is one of them:
            auto -> choose finding method automatically (default)
            norm -> simply comparing the range in RGB space
            lum  -> transforming into luminosities before the comparison

       -s SELECTTYPE, --select-color=SELECTTYPE
            choose the method for selecting representative color from each median-cut box, make sense only  when
            -p option (color reduction) is specified.
            SELECTTYPE is one of them:
            auto     -> choose selecting method automatically (default)
            center   -> choose the center of the box
            average  -> calculate the color average into the box
            histogram -> similar with average but considers color histogram

       -c REGION, --crop=REGION
            crop source image to fit the specified geometry.
            REGION should be formatted as '%dx%d+%d+%d'.

       -w WIDTH, --width=WIDTH
            resize image to specified width.
            WIDTH is represented by the following syntax:
            auto       -> preserving aspect ratio (default)
            <number>%  -> scale width with given percentage
            <number>   -> scale width with pixel counts
            <number>px -> scale width with pixel counts

       -h HEIGHT, --height=HEIGHT
            resize image to specified height.
            HEIGHT is represented by the following syntax
            auto       -> preserving aspect ratio (default)
            <number>%  -> scale height with given percentage
            <number>   -> scale height with pixel counts
            <number>px -> scale height with pixel counts

       -r RESAMPLINGTYPE, --resampling=RESAMPLINGTYPE
            choose resampling method used with -w or -h option (scaling).
            RESAMPLINGTYPE is one of them:
            nearest  -> Nearest-Neighbor method
            gaussian -> Gaussian filter
            hanning  -> Hanning filter
            hamming  -> Hamming filter
            bilinear -> Bilinear filter (default)
            welsh    -> Welsh filter
            bicubic  -> Bicubic filter
            lanczos2 -> Lanczos-2 filter
            lanczos3 -> Lanczos-3 filter
            lanczos4 -> Lanczos-4 filter

       -q QUALITYMODE, --quality=QUALITYMODE
            select quality of color quanlization.
            QUALITYMODE is one of them:
            auto -> decide quality mode automatically (default)
            high -> high quality and low speed mode
            low  -> low quality and high speed mode
            full -> quality and careful speed mode

       -l LOOPMODE, --loop-control=LOOPMODE
            select loop control mode for GIF animation.
            auto    -> honer the setting of GIF header (default)
            force   -> always enable loop
            disable -> always disable loop

       -t PALETTETYPE, --palette-type=PALETTETYPE
            select palette color space type.
            auto -> choose palette type automatically (default)
            hls  -> use HLS color space
            rgb  -> use RGB color space

       -b BUILTINPALETTE, --builtin-palette=BUILTINPALETTE
            select built-in palette type
            xterm16    -> X default 16 color map
            xterm256   -> X default 256 color map
            vt340mono  -> VT340 monochrome map
            vt340color -> VT340 color map

       -E ENCODEPOLICY, --encode-policy=ENCODEPOLICY
            select encoding policy
            auto -> choose encoding policy automatically (default)
            fast -> encode as fast as possible
            size -> encode to as small sixel sequence as possible

       -B BGCOLOR, --bgcolor=BGCOLOR
            specify background color
            BGCOLOR is represented by the following syntax
            #rgb
            #rrggbb
            #rrrgggbbb
            #rrrrggggbbbb
            rgb:r/g/b
            rgb:rr/gg/bb
            rgb:rrr/ggg/bbb
            rgb:rrrr/gggg/bbbb

       -P, --penetrate
            penetrate GNU Screen using DCS pass-through sequence.

       -D, --pipe-mode
            read source images from stdin continuously.

       -v, --verbose
            show debugging info.

       -V, --version
            show version and license info.

       -H, --help
            print help.

ENVIRONMENT VARIABLES

       img2sixel has the following command-line options:

       SIXEL_BGCOLOR
            specify background color.
            overrided by -B(--bgcolor) option.
            represented by the following syntax:
            #rgb
            #rrggbb
            #rrrgggbbb
            #rrrrggggbbbb
            rgb:r/g/b
            rgb:rr/gg/bb
            rgb:rrr/ggg/bbb
            rgb:rrrr/gggg/bbbb

       SIXEL_NCOLORS
            specify number of colors to reduce the image to (default=256).
            overrided by -p(--colors) option.

Image loaders

       img2sixel includes two or more image decoder components.

       stb_image

            libsixel includes stb_image, a public domain image loader.
            img2sixel  uses  it  as  default built-in image decoder.  It can decode almost all images. but a few
            images can not be decoded by its limitations.

            Supported source formats:
               JPEG baseline & progressive (12 bpc/arithmetic not supported, same as stock IJG lib)
               PNG 1/2/4/8-bit-per-channel
               TGA (not sure what subset, if a subset)
               BMP non-1bpp, non-RLE
               PSD (composited view only, no extra channels)
               GIF/Animated GIF
               PIC (Softimage PIC)
               PNM (PPM and PGM binary only)

            Limitations:
               no 16-bit-per-channel PNG
               no 12-bit-per-channel JPEG
               no JPEGs with arithmetic coding / JPEG 2000
               no 1-bit BMP

       libpng

               If libpng library is linked at compile time, img2sixel uses it for decoding PNG image.

       libjpeg

               If libjpeg library is linked at compile time, img2sixel uses it for decoding JPEG image.

       gdk-pixbuf2

               If gdk-pixbuf2 library is linked at compile time, img2sixel uses it automatically in some cases.

       GD

               If GD library is linked at compile time, img2sixel uses it automatically in some cases.

       libsixel

               img2sixel can load SIXEL as source image format, because  it  uses  libsixel  as  a  SIXEL  image
            decoder.

HISTORY

       Former SIXEL encoders(such as ppmtosixel) are mainly designed for dot-matrix printers.  They minimize the
       amount of printer-head  movement  distance.   But  nowadays  this  method  did  not  represent  the  best
       performance  for  displaying  sixel  data  on  terminal  emulators.  Encoded SIXEL data for VT-2xx/VT-3xx
       terminals were found in 80's Usenet, But the technology of how to create them seems to be lost.

       kmiya's sixel(kmiya,2014) introduces an efficient encoding  method  which  is  re-designed  for  terminal
       emulators  to  optimize  the  overhead of transporting SIXEL with keeping compatibility with former SIXEL
       terminal.  Now libsixel and ImageMagick's sixel coder follow it.

       Araki Ken, known as the maintainer of mlterm, proposed the method for  more  compressed  SIXEL  encoding.
       Now libsixel adopted that method.  Araki Ken describes about the way to generate high quality SIXEL.

       See http://mlterm.sourceforge.net/libsixel.pdf(in Japanese).

SEE ALSO

       sixel(5) sixel2png(1)

AUTHORS

       img2sixel  is  maintained  by  Hayaki  Saito.  We imported whole code of stb_image v2.02, written by Sean
       Barrett and its contributers, for loading various images, and imported some code from pnmquant.c  (netpbm
       library) for image quantization.

COPYRIGHT

       Copyright (c) 2014-2015 Hayaki Saito

       Permission  is  hereby  granted,  free  of  charge,  to  any person obtaining a copy of this software and
       associated documentation files (the "Software"), to deal in the Software without  restriction,  including
       without  limitation  the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
       copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to  the
       following conditions:

       The  above  copyright  notice  and  this permission notice shall be included in all copies or substantial
       portions of the Software.

       THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  IMPLIED,  INCLUDING  BUT  NOT
       LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
       EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
       IN  AN  ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
       THE USE OR OTHER DEALINGS IN THE SOFTWARE.

THANKS

       This software derives from the following implementations.

       stb_image-v2.02
            This software includes stb_image-v2.02 (stb_image.h), a public domain JPEG/PNG reader.
            https://github.com/nothings/stb

       pnmquant.c (netpbm library)
            The implementation of median cut algorithm for  color  quantization  in  quant.c  is  imported  from
            pnmcolormap included in netpbm library.
            http://netpbm.sourceforge.net/
            pnmcolormap was derived from ppmquant, originally by Jef Poskanzer.

            Copyright (C) 1989, 1991 by Jef Poskanzer.
            Copyright (C) 2001 by Bryan Henderson.
            Permission  to use, copy, modify, and distribute this software and its documentation for any purpose
            and without fee is hereby granted, provided that the above copyright notice appear in all copies and
            that both that copyright notice and this permission notice appear in supporting documentation.  This
            software is provided "as is" without express or implied warranty.

       sixel 2014-3-2

            some part of converters/loader.c are derived from kmiya's "sixel" original version (2014-3-2).
            http://nanno.dip.jp/softlib/man/rlogin/sixel.tar.gz
            It is written by kmiya@culti.
            He distributes it under  very  permissive  license  which  permits  useing,  copying,  modification,
            redistribution, and all other public activities without any restrictions.
            He declares this is compatible with MIT/BSD/GPL.

REFERENCES

       resize.c (ImageMagick)

            We added some resampling filters in reference to the line-up of filters of MagickCore's resize.c.

            http://www.imagemagick.org/api/MagickCore/resize_8c_source.html

CONTRIBUTORS

       Araki Ken (@arakiken)
       Markus Elfring (@elfring)
       isaki (@isaki68k)
       NOKUBI Takatsugu (@knok)
       Yasuhiro MATSUMOTO (@mattn)
       Izumi Tsutsui (@tsutsui)
       Iwamoto Kouichi (@ttdoda)
       haru (@uobikiemukot)
       Vertis Sidus (@vrtsds)
       Bruce Mitchener (@waywardmonkeys)
       Kazuhiro YOSHIKAWA (@yoshikaw)

BUGS

       •      Send bug-reports, fixes, enhancements to saitoha@me.com.jp