NAME
Text::UnicodeTable::Simple - Create a formatted table using characters.
SYNOPSIS
use Text::UnicodeTable::Simple;
$t = Text::UnicodeTable::Simple->new();
$t->set_header(qw/Subject Score/);
$t->add_row('English', '78');
$t->add_row('Mathematics', '91');
$t->add_row('Chemistry', '64');
$t->add_row('Physics', '95');
$t->add_row_line();
$t->add_row('Total', '328');
print "$t";
# Result:
.-------------+-------.
| Subject | Score |
+-------------+-------+
| English | 78 |
| Mathematics | 91 |
| Chemistry | 64 |
| Physics | 95 |
+-------------+-------+
| Total | 328 |
'-------------+-------'
DESCRIPTION
Text::UnicodeTable::Simple create character table.
There are some module for creating text table at CPAN, Text::ASCIITable, Text::SimpleTable, Text::Table etc. But those module deal with only ASCII, don't deal with full width characters. If you use them with full width characters, a table created may be bad-looking.
Text::UnicodeTable::Simple resolves problem of full width characters. So you can use Japansese Hiragana, Katakana, Korean Hangeul, Chinese Kanji characters. See eg/
directory for Japanese examples.
INTERFACE
Methods
new()
Creates and returns a new table instance.
set_header() [alias: addCols ]
Set the headers for the table. (compare with <th> in HTML). You must call set_header
firstly. If you call other methods without calling set_header
, then you fail.
Input strings should be string, not octet stream.
add_row(@collist | \@collist) [alias: addRow ]
Add one row to the table.
Input strings should be string, not octet stream.
add_row_line() [alias: addRowLine ]
Add a line after the current row.
draw()
Return the table as string.
Text::UnicodeTable::Simple overload stringify operator, so you can omit ->draw()
method.
AUTHOR
Syohei YOSHIDA <syohex@gmail.com>
COPYRIGHT
Copyright 2011- Syohei YOSHIDA
SEE ALSO
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.