NAME
WebService::HtmlKitCom::FavIconFromImage - generate favicons from images on http://www.html-kit.com/favicon/
SYNOPSIS
use strict;
use warnings;
use WebService::HtmlKitCom::FavIconFromImage;
my $fav = WebService::HtmlKitCom::FavIconFromImage->new;
$fav->favicon( 'some_pics.jpg', file => 'out.zip' )
or die $fav->error;
DESCRIPTION
The module provides interface to web service on http://www.html-kit.com/favicon/ which allows one to create favicons from regular images. What's a "favicon"? See http://en.wikipedia.org/wiki/Favicon
CONSTRUCTOR
new
my $fav = WebService::HtmlKitCom::FavIconFromImage->new;
my $fav = WebService::HtmlKitCom::FavIconFromImage->new( timeout => 10 );
my $fav = WebService::HtmlKitCom::FavIconFromImage->new(
mech => WWW::Mechanize->new( agent => '007', timeout => 10 ),
);
Bakes and returns a fresh WebService::HtmlKitCom::FavIconFromImage object. Takes two optional arguments which are as follows:
timeout
my $fav = WebService::HtmlKitCom::FavIconFromImage->new( timeout => 10 );
Takes a scalar as a value which is the value that will be passed to
the WWW::Mechanize object to indicate connection timeout in seconds.
Defaults to: 180 seconds
mech
my $fav = WebService::HtmlKitCom::FavIconFromImage->new(
mech => WWW::Mechanize->new( agent => '007', timeout => 10 ),
);
If a simple timeout is not enough for your needs feel free to specify
the mech argument which takes a WWW::Mechanize object as a value.
Defaults to: plain WWW::Mechanize object with timeout argument
set to whatever WebService::HtmlKitCom::FavIconFromImage's timeout argument
is set to as well as agent argument is set to mimic FireFox.
METHODS
favicon
my $response = $fav->favicon('some_pic.jpg')
or die $fav->error;
$fav->favicon('some_pic.jpg',
file => 'out.zip',
) or die $fav->error;
Instructs the object to create a favicon. First argument is mandatory and must be a file name of the image you want to use for making a favicon. Note: the site is being unclear about what it likes and what it doesn't. What I know so far is that it doesn't like 1.5MB pics but I'll leave you at it :). Return value is described below. Optional arguments are passed in a key/value form. Possible optional arguments are as follows:
file
->favicon( 'some_pic.jpg', file => 'out.zip' );
Optional.
If file argument is specified the archive containing the favicon will
be saved into the file name of which is the value of file argument.
By default not specified and you'll have to fish out the archive
from the return value (see below)
image
->favicon( '', image => 'some_pic.jpg' );
Optional. You can call the method in an alternative way by specifying
anything as the first argument and then setting image argument. This
functionality is handy if your arguments are coming from a hash, etc.
Defaults to: first argument of this method.
RETURN VALUE
On failure favicon() method returns either undef or an empty list
depending on the context and the reason for failure will be available
via error() method. On success it returns an HTTP::Response object
obtained while fetching your precious favicon. If you didn't specify
file argument to favicon() method you'd obtain the favicon via
content() method of the returned HTTP::Response object (note that
it would be a zip archive)
error
my $response = $fav->favicon('some_pic.jpg')
or die $fav->error;
Takes no arguments, returns a human parsable error message explaining why
the call to favicon() failed.
mech
my $old_mech = $fav->mech;
$fav->mech( WWW::Mechanize->new( agent => 'blah' ) );
Returns a WWW::Mechanize object used by this class. When called with an
optional argument (which must be a WWW::Mechanize object) will use it
in any subsequent favicon() calls.
response
my $response = $fav->response;
Must be called after a successful call to favicon(). Takes no arguments,
returns the exact same return value as last call to favicon() did.
REPOSITORY
BUGS
To report bugs or request features, please use https://github.com/zoffixznet/WebService-HtmlKitCom-FavIconFromImage/issues
If you can't access GitHub, you can email your request
to bug-webservice-htmlkitcom-faviconfromimage at rt.cpan.org
AUTHOR
LICENSE
You can use and distribute this module under the same terms as Perl itself.
See the LICENSE file included in this distribution for complete
details.