..::Acme::AsciiArt2HtmlTable version 0.01 ========================================= =head1 NAME Acme::AsciiArt2HtmlTable - Converts Ascii art to an HTML table =head1 VERSION Version 0.01 =head1 SYNOPSIS use Acme::AsciiArt2HtmlTable; my $table = "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggyyyyrrrrrrrrrrrr\n" . "ggggggyyyyrrrrrrrrrrrr\n" . "gggggyyyyyyrrrrrrrrrrr\n" . "gggggyyyyyyrrrrrrrrrrr\n" . "ggggggyyyyrrrrrrrrrrrr\n" . "ggggggyyyyrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" . "ggggggggrrrrrrrrrrrrrr\n" ; my $html = aa2ht( { td => { width => 3 , height => 3 } } , $table); # $html now holds a table with a color representation of your # ascii art. In this case, the Portuguese flag. =head1 FUNCTIONS =head2 aa2ht Gets ascii text and converts it to an HTML table. This is how it works: =over 4 =item * each line is a C element =item * each letter is a C element =item * each C has background of a specific color, which is defined by the letter that created it =back =head3 OPTIONS You can pass a reference to a hash before the text you want to convert. =head4 id In order to save space in the output, C and C elements' attributes are not in each element, but rather in a C =head4 use-default-colors If set to a false value, no default mappings are used. my $html = aa2ht( { 'use-default-colors' => 0 }, $ascii); Behind the curtains, there is still a mapping: the default mapping to white. =head4 colors You can override color definitions or specify your own. my $html = aa2ht( { 'colors' => { '@' => 'ffddee', 'g' => '00ffff' } }, $ascii); =head4 randomize-new-colors If set to a true value, letters with no mappings are assigned a random one. my $html = aa2ht( { 'randomize-new-colors' => 1 }, $ascii); You might want to remove the default mappings if you're really interested in a completely random effect: my $html = aa2ht( { 'use-default-colors' => 0, 'randomize-new-colors' => 1 }, $ascii); You might also want to keep the white space as a white block: my $html = aa2ht( { 'use-default-colors' => 0, 'colors' => { ' ' => 'ffffff'}, 'randomize-new-colors' => 1 }, $ascii); =head4 table With the parameter C
you can specify specific values for fields like C, C and C (all these have value "0" by default). my $html = aa2ht( { 'table' => { 'border' => '1' } }, $ascii ); These attributes go directly into the C
tag. =head4 tr With the C parameter you can specify specific values for C's attributes. These attributes go into a C