Provided by: jp2a_1.3.2-1ubuntu1_amd64 bug

NAME

       jp2a - convert JPEG, PNG and WebP images to ASCII

SYNOPSIS

       jp2a [ options ] [ filename(s) | URL(s) ]

DESCRIPTION

       jp2a  will convert JPEG, PNG and WebP images to ASCII characters.  You can specify a mixture of files and
       URLs.

OPTIONS

       -      Read JPEG, PNG and WebP image from standard input

       --background=light --background=dark
              If you don't want to mess with --invert all the time, just use these instead.  If  you  are  using
              white characters on a black display, then use --background=dark, and vice versa.

       -b --border
              Frame output image in a border

       --chars=...
              Use   the   given   characters   when   producing   the   output   ASCII   image.   Default  is  "
              ...',;:clodxkO0KXNWM".

       --colors
              Use truecolor (or ANSI color if truecolor is not supported) for text output and CSS color for HTML
              output.

       --color-depth=...
              Use a specific color-depth for terminal output. Valid values are: 4 (for ANSI), 8 (for  256  color
              palette) and 24 (for truecolor or 24-bit color).

       -d --debug
              Print debugging information when using libcurl to download images from the net.

       -f --term-fit
              Use the largest dimension that makes the image fit in your terminal display.

       --term-height
              Use terminal display height and calculate width based on image aspect ratio.

       --term-width
              Use terminal display width and calculate height based on image aspect ratio.

       -z --term-zoom
              Use terminal display width and height.

       -c --term-center
              Center image in terminal.

       --fill When  used  with  --html  and  --color,  then color each output character's background color.  For
              instance, if you want to use fill-output on a light background, do

              jp2a --color --html --html-fill --background=light somefile.jpg --output=dark.html

              To do the same on a light background:

              jp2a --color --html --html-fill --background=dark somefile.jpg --output=light.html

              The default is to have fill disabled.

       -x --flipx
              Flip output image horizontally

       -y --flipy
              Flip output image vertically

       --height=N
              Set output height.  If only --height is specified, then output width will be calculated  according
              to the source images aspect ratio.

       -h --help
              Display a short help text

       --grayscale
              Converts image to grayscale when using --html or --colors.

       --html Make ASCII output in strict XHTML 1.0. (Will output in HTML for version 2.0.0 and above.)

       --htmlls
              Make  ASCII  output  in  HTML  (Living Standard), suitable for viewing with web browsers.  This is
              useful with big output dimensions, and if you want to check the result with a browser  with  small
              font.

       --xhtml
              Make ASCII output in strict XHTML 1.0.

       --html-fill
              Same as --fill.  You should use that option instead.

       --html-no-bold
              Do not use bold text for HTML output.

       --html-raw
              Output  only  the  image  in HTML codes, leaving out the rest of the webpage, so you can construct
              your own. (Will use <br> for version 2.0.0 and above instead of <br/>.)

       --html-fontsize=N
              Set fontsize when using --html output.  Default is 4.

       --html-title=...
              Set HTML output title.

       --output=...
              Write ASCII output to given filename.  To explicitly specify standard output, use --output=-.

       -i --invert
              Invert output image.  If you view a picture with white background, but you  are  using  a  display
              with light characters on a dark background, you should invert the image.

       --red=...

       --green=...

       --blue=...
              When  converting from RGB to grayscale, use the given weights to calculate luminance.  The default
              is red=0.2989, green=0.5866 and blue=0.1145.

       --size=WIDTHxHEIGHT
              Set output dimension.

       -v --verbose
              Print some verbose information to standard error when reading each JPEG image.

       --width=N
              Set output width.  If you only specify the width, the height will be calculated automatically.

       -V --version
              Print program version.

       --zoom Sets output dimensions to your entire terminal window, disregarding source image aspect ratio.

       --edge-threshold= ...
              Specifies an image gradient above which to shade lines and edges with directional glyphs (such  as
              -/|\).   The  right value to pick up the edges nicely will depend on the image but might be around
              0.5.

       --edges-only
              Only draw edges, so that the resulting image is like a line drawing or edge detector. This  option
              should be used in conjunction with --edge-threshold so that edges are drawn.

RETURN VALUES

       jp2a returns 1 when errors are encountered, zero for no errors.

EXAMPLES

       Convert and print imagefile.jpg using ASCII characters in 40 columns and 20 rows:

       jp2a --size=40x20 imagefile.jpg

       Download an image off the net, convert and print:

       jp2a http://www.google.com/intl/en/logos/easter_logo.jpg

       Output picture.jpg and picture2.jpg, each 80x25 characters, using the characters " ...ooxx@@" for output:

       jp2a --size=80x25 --chars=" ...ooxx@@" picture.jpg picture2.jpg

       Output image.jpg using 76 columns, height is automatically calculated from aspect ratio of image.jpg

       cat image.jpg | jp2a --width=76 -

       If  you  use  jp2a  together  with ImageMagick's convert(1) then you can make good use of pipes, and have
       ImageMagick do all sorts of image conversions and effects on the source image.  For example:

       magick somefile.gif jpg:- | jp2a - --width=80

       Check out convert(1) options to see what you can do.  Convert can handle almost any image format, so with
       this combination you can convert images in e.g. PDF or AVI files to ASCII.

       jp2a uses a very basic scaling algorithm for every image format  except  WebP.  To  get  better  quality,
       convert an image to WebP to make use of the scaling built into the libwebp library:

       cwebp -quiet image.jpg -o - | jp2a -

       Although  the  default  build  of jp2a includes automatic downloading of files specified by URLs, you can
       explicitly download them by using curl(1) or wget(1), for example:

       curl -s http://foo.bar/image.jpg | magick - jpg:- | jp2a -

       You can pass the --edge-threshold option to highlight the edges of the image,  or  add  the  --edges-only
       option to draw only the edges, to produce a line drawing.

       jp2a --edge-threshold=0.5 --edges-only imagefile.jpg

DOWNLOADING IMAGES FROM THE NET

       If you have compiled jp2a with libcurl(3), you can download images by specifying URLs:

       jp2a https://user:pass@foo.com/bar.jpg

       The protocols recognized are ftp, ftps, file, http, https and tftp.

       If  you  need  more control of the downloading, you should use curl(1) or wget(1) and jp2a read the image
       from standard input.

       jp2a uses pipe and fork to download images using libcurl (i.e., no exec or system  calls)  and  therefore
       does not worry about malevolently formatted URLs.

GRAYSCALE CONVERSION

       You can extract the red channel by doing this:

       jp2a somefile.jpg --red=1.0 --green=0.0 --blue=0.0

       This  will  calculate  luminance  based  on  Y = R*1.0 + G*0.0 + B*0.0.  The default values is to use Y =
       R*0.2989 + G*0.5866 + B*0.1145.

PROJECT HOMEPAGE

       The latest version of jp2a and news is always available from https://github.com/Talinx/jp2a.

SEE ALSO

       cjpeg(1), djpeg(1), jpegtran(1), convert(1), cwebp(1)

BUGS

       jp2a does not interpolate when resizing (except for WebP images).  If you want better quality, try  using
       cwebp(1) to convert the image to WebP before using jp2a to get correct scaling.

       Another  issue  is  that  jp2a skips some X-pixels along each scanline.  This gives a less precise output
       image, and will probably be corrected in future versions.

AUTHOR

       Christian Stigen Larsen and Christoph Raitzig

       jp2a uses jpeglib to read JPEG files.  jpeglib is made by The Independent JPEG Group (IJG),  who  have  a
       page at http://www.ijg.org

       jp2a uses libpng to read PNG files.  libpng's homepage: http://libpng.org/pub/png/libpng.html

       jp2a uses libwebp to read WebP files.  libwebp's homepage: https://developers.google.com/speed/webp/

LICENSE

       jp2a is distributed under the GNU General Public License v2.

version 1.3.0                                  September 22, 2024                                        jp2a(1)