View on
MetaCPAN is shutting down
For details read Perl NOC. After June 25th this page will redirect to
Zoffix Znet > WebService-HtmlKitCom-FavIconFromImage-1.001001 > WebService::HtmlKitCom::FavIconFromImage



Annotate this POD


View/Report Bugs
Module Version: 1.001001   Source  


WebService::HtmlKitCom::FavIconFromImage - generate favicons from images on


    use strict;
    use warnings;

    use WebService::HtmlKitCom::FavIconFromImage;

    my $fav = WebService::HtmlKitCom::FavIconFromImage->new;

    $fav->favicon( 'some_pics.jpg', file => '' )
        or die $fav->error;


The module provides interface to web service on which allows one to create favicons from regular images. What's a "favicon"? See



    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:


    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


    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.



    my $response = $fav->favicon('some_pic.jpg')
        or die $fav->error;

        file    => '',
    ) 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:


    ->favicon( 'some_pic.jpg', file => '' );

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)


    ->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.


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)


    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.


    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.


    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.


Fork this module on GitHub:


To report bugs or request features, please use

If you can't access GitHub, you can email your request to bug-webservice-htmlkitcom-faviconfromimage at



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.

syntax highlighting: