NAME
HTML::TagCloud::Extended - HTML::TagCloud extension
SYNOPSIS
use HTML::TagCloud::Extended;
my $cloud = HTML::TagCloud::Extended->new();
$cloud->add($tag1, $url1, $count1, $timestamp1);
$cloud->add($tag2, $url2, $count2, $timestamp2);
$cloud->add($tag3, $url3, $count3, $timestamp3);
my $html = $cloud->html_and_css( {
order_by => 'count_desc',
limit => 20,
} );
print $html;
DESCRIPTION
This is extension of HTML::TagCloud.
This module allows you to register timestamp with tags. And color of tags will be changed according to it's timestamp.
Now, this doesn't depend on HTML::TagCloud.
TIMESTAMP
When you call 'add()' method, set timestamp as last argument.
$cloud->add('perl','http://www.perl.org/', 20, '2005-07-15 00:00:00');
FORMAT
follow three types of format are allowed.
COLORS
This module chooses color from follow four types according to tag's timestamp.
- earliest
- earlier
- later
- latest
You needn't to set colors because the default colors are set already.
But when you want to set colors by yourself, of course, you can.
my $cloud = HTML::TagCloud::Extended->new;
$cloud->colors->set(
earliest => '#000000',
);
$cloud->colors->set(
earlier => '#333333',
later => '#999999',
latest => '#cccccc',
);
# or, you can set color for each attribute
$cloud->colors->set(
earliest => {
link => '#000000',
hover => '#CCCCCC',
visited => '#333333',
active => '#666666',
},
);
LIMITTING
When you want to limit the amount of tags, 'html()', html_and_css()' need second argument as hash reference.
$cloud->html_and_css( { order_by => 'timestamp_desc' , limit => 20 } );
SORTING TYPE
default is 'name'
- name
- name_desc
- count
- count_desc
- timestamp
- timestamp_desc
OTHER FEATURES
- use_hot_color
-
set by size
my $cloud = HTML::TagCloud::Extended->new( use_hot_color => 'size', hot_tags_size => 24, ); # or set with accessor method my $cloud = HTML::TagCloud::Extended->new; $cloud->use_hot_color('size'); $cloud->hot_tags_size(24);
Then, tags that's size is over 24 applys color for 'hot'. If you omit 'hot_tags_size', it'll be proper number automatically.
set by name
my $cloud = HTML::TagCloud::Extended->new( use_hot_color => 'name', hot_tags_name => [ 'perl', 'ruby', 'python' ], ); # or set with accessor method my $cloud = HTML::TagCloud::Extended->new; $cloud->use_hot_color('name'); $cloud->hot_tags_name('perl', 'ruby', 'puthon');
You can alse change colors for 'hot' by yourself.
$cloud->colors->set( hot => '#ff9900' ); # or $cloud->colors->set( hot => { link => '#000000', hover => '#CCCCCC', visited => '#333333', active => '#666666', }, );
- base_font_size
-
default size is 24
# set as constructor's argument my $cloud = HTML::TagCloud::Extended->new( base_font_size => 30, ); # or you can use accessor. $cloud->base_font_size(30);
- size_suffix
-
default suffix is 'px'
You can choose it from [ mm cm in pt pc px ].
# set as constructor's argument my $cloud = HTML::TagCloud::Extended->new( size_suffix => 'pt', ); # or you can use accessor. $cloud->size_suffix('cm');
- font_size_range
-
defualt range is 12.
my $cloud = HTML::TagCloud::Extended->new( font_size_range => 10 ); $cloud->font_size_range(10);
- css_class
-
default name is 'tagcloud'
my $cloud = HTML::TagCloud::Extended->new( css_class => 'mycloud', ); $cloud->css_class('mycloud');
SEE ALSO
AUTHOR
Lyo Kato <lyo.kato@gmail.com>
COPYRIGHT AND LICENSE
This library is free software. You can redistribute it and/or modify it under the same terms as perl itself.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 287:
Expected text after =item, not a number