Image::Caa - Colored ASCII Art
use Image::Caa; use Image::Magick; # load an image my $image = Image::Magick->new; $image->Read('sunset.jpg'); # display it as ASCII Art my $caa = new Image::Caa(); $caa->draw_bitmap(0, 0, 40, 20, $image); # some fancy options my $caa = new Image::Caa( driver => 'DriverANSI', dither => 'DitherOrdered8', black_bg => 1, ); $caa->draw_bitmap(0, 0, 40, 20, $image);
This module outputs Image::Magick image objects as ASCII Art, using a variety of output dithering modes and output drivers (currently supported is a plain old ANSI termical output driver and a curses driver).
Image::Magick
new( opt => 'value', ... )
Returns a new Image::Caa object. The options are as follows:
Image::Caa
driver
Output driver. Valid values are:
DriverANSI (default)
DriverANSI
DriverCurses
dither
Dithering mode. Valid values are:
DitherNone (default)
DitherNone
DitherOrdered2
DitherOrdered4
DitherOrdered8
DitherRandom
black_bg
Set to 1 to enable black background mode. By default, we use colored backgrounds to allow 256 colors (16 foreground x 16 background)
window
Used only by the Curses output driver. Indicates the Curses window to write output into.
draw_bitmap($x1, $y1, $x2, $y2, $image)
Draws the image $image within the box bounded by ($x1,$y1)-($x2,$y2). Note that the default (ANSI) output driver ignores the origin position as uses only the absolute box size.
$image
($x1,$y1)-($x2,$y2)
Both the dithering and driver backends are plugable and fairly easy to create - just create modules in the Image::Caa::* namespace. Dither modules need to implement the new(), init($line), get() and increment() methods. Driver modules need to implement the new(), init(), set_color($fg, $bg), putchar($x, $y, $char) and fini() methods. Look at the existing modules for guidance.
new()
init($line)
get()
increment()
init()
set_color($fg, $bg)
putchar($x, $y, $char)
fini()
Copyright (C) 2006, Cal Henderson <cal@iamcal.com>
This library is based on libcaca's bitmap.c
libcaca is Copyright (C) 2004 Sam Hocevar <sam@zoy.org>
libcaca is licensed under the GNU Lesser General Publice License
Image::Magick, http://sam.zoy.org/libcaca/
To install Image::Caa, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Image::Caa
CPAN shell
perl -MCPAN -e shell install Image::Caa
For more information on module installation, please visit the detailed CPAN module installation guide.