-
-
20 Apr 2013 05:05:31 UTC
- Distribution: HTML-TagCloud
- Module version: 0.38
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (14)
- Testers (6006 / 51 / 0)
- Kwalitee
Bus factor: 0- 79.70% Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (10.28KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- Test::More
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
HTML::TagCloud - Generate An HTML Tag Cloud
SYNOPSIS
# A cloud with tags that link to other web pages. my $cloud = HTML::TagCloud->new; $cloud->add($tag1, $url1, $count1); $cloud->add($tag2, $url2, $count2); $cloud->add($tag3, $url3, $count3); my $html = $cloud->html_and_css(50); # A cloud with tags that do not link to other web pages. my $cloud = HTML::TagCloud->new; $cloud->add_static($tag1, $count1); $cloud->add_static($tag2, $count2); $cloud->add_static($tag3, $count3); my $html = $cloud->html_and_css(50); # A cloud that is comprised of tags in multiple categories. my $cloud = HTML::TagCloud->new; $cloud->add($tag1, $url1, $count1, $category1); $cloud->add($tag2, $url2, $count2, $category2); $cloud->add($tag3, $url3, $count3, $category3); my $html = $cloud->html_and_css(50); # The same cloud without tags that link to other web pages. my $cloud = HTML::TagCloud->new; $cloud->add_static($tag1, $count1, $category1); $cloud->add_static($tag2, $count2, $category2); $cloud->add_static($tag3, $count3, $category3); my $html = $cloud->html_and_css(50); # Obtaining uncategorized HTML for a categorized tag cloud. my $html = $cloud->html_without_categories(); # Explicitly requesting categorized HTML. my $html = $cloud->html_with_categories();
DESCRIPTION
The HTML::TagCloud module enables you to generate "tag clouds" in HTML. Tag clouds serve as a textual way to visualize terms and topics that are used most frequently. The tags are sorted alphabetically and a larger font is used to indicate more frequent term usage.
Example sites with tag clouds: http://www.43things.com/, http://www.astray.com/recipes/ and http://www.flickr.com/photos/tags/.
This module provides a simple interface to generating a CSS-based HTML tag cloud. You simply pass in a set of tags, their URL and their count. This module outputs stylesheet-based HTML. You may use the included CSS or use your own.
CONSTRUCTOR
new
The constructor takes a few optional arguments:
my $cloud = HTML::TagCloud->new(levels=>10);
if not provided, levels defaults to 24
my $cloud = HTML::TagCloud->new(distinguish_adjacent_tags=>1);
If distinguish_adjacent_tags is true HTML::TagCloud will use different CSS classes for adjacent tags in order to be able to make it easier to distinguish adjacent multi-word tags. If not specified, this parameter defaults to a false value.
my $cloud = HTML::TagCloud->new(categories=>\@categories);
If categories are provided then tags are grouped in separate divisions by category when the HTML fragment is generated.
METHODS
add
This module adds a tag into the cloud. You pass in the tag name, its URL and its count:
$cloud->add($tag1, $url1, $count1); $cloud->add($tag2, $url2, $count2); $cloud->add($tag3, $url3, $count3);
add_static
This module adds a tag that does not link to another web page into the cloud. You pass in the tag name and its count:
$cloud->add_static($tag1, $count1); $cloud->add_static($tag2, $count2);
tags($limit)
Returns a list of hashrefs representing each tag in the cloud, sorted by alphabet. Each tag has the following keys: name, count, url and level.
css
This returns the CSS that will format the HTML returned by the html() method with tags which have a high count as larger:
my $css = $cloud->css;
html($limit)
This returns the tag cloud as HTML without the embedded CSS (you should use both css() and html() or simply the html_and_css() method). If any categories were specified when items were being placed in the cloud then the tags will be organized into divisions by category name. If a limit is provided, only the top $limit tags are in the cloud, otherwise all the tags are in the cloud:
my $html = $cloud->html(200);
html_with_categories($limit)
This returns the tag cloud as HTML without the embedded CSS. The tags will be arranged into divisions by category. If a limit is provided, only the top $limit tags are in the cloud. Otherwise, all tags are in the cloud.
html_without_categories($limit)
This returns the tag cloud as HTML without the embedded CSS. The tags will not be grouped by category if this method is used to generate the HTML.
html_and_css($limit)
This returns the tag cloud as HTML with embedded CSS. If a limit is provided, only the top $limit tags are in the cloud, otherwise all the tags are in the cloud:
my $html_and_css = $cloud->html_and_css(50);
AUTHOR
Leon Brocard,
<acme@astray.com>
.COPYRIGHT
Copyright (C) 2005-6, Leon Brocard
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.
Module Install Instructions
To install HTML::TagCloud, copy and paste the appropriate command in to your terminal.
cpanm HTML::TagCloud
perl -MCPAN -e shell install HTML::TagCloud
For more information on module installation, please visit the detailed CPAN module installation guide.