NAME
Image::Empty - Empty/transparent 1x1 pixel images for use in tracking URLs.
VERSION
Version 0.05
SYNOPSIS
Create 1x1 pixel empty/transparent GIFs to use in tracking URLs.
my $empty_gif = Image::Empty->gif;
print CGI->new->header( -type => $empty_gif->type, -Content_length => $empty_gif->length );
print $empty_gif->content;
Or
my $gif = Image::Empty->gif;
$gif->render( CGI->new );
Or, if running under Plack
my $gif = Image::Empty->gif;
return $gif->render( Plack::Response->new );
METHODS
Attributes
type
$empty_image->type;
Returns the mime/type of the image for use in HTTP headers.
length
$empty_image->length;
Returns the content length for use in HTTP headers.
disposition
$empty_image->disposition;
Returns the content disposition for use in HTTP headers.
filename
$empty_image->filename;
Returns the content filename for use in HTTP headers.
content
$empty_image->content;
Returns the image data to send in the HTTP response body.
Class Methods
gif
my $gif = Image::Empty->gif;
Returns an instance representing an empty GIF for use in responding to HTTP requests.
Instance Methods
render
CGI
You can supply a CGI
object to the render
method to have the HTTP header and content set for you.
A string is returned for you to print, you can condense this down to a single line by chaining methods.
print Image::Empty->gif->render( CGI->new );
It is the same as doing:
my $gif = Image::Empty->gif;
print CGI->new->header( -type => $gif->type,
-Content_length => $gif->length,
-Content_disposition => $gif->disposition . '; filename="' . $gif->filename . '"',
);
print $gif->content;
Plack::Response
If you are working under Plack, this module supports that too.
This scenario returns the finalized
Plack::Response object, as a quick one-liner...
my $app = sub {
return Image::Empty->gif->render( Plack::Response->new );
}
It is the same as doing:
my $app = sub {
my $gif = Image::Empty->gif;
my $response = Plack::Response->new;
return $gif->render( $response );
}
TODO
* PNG support * Catalyst support
AUTHOR
Rob Brown, <rob at intelcompute.com>
BUGS
Please report any bugs or feature requests to bug-image-empty at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Image-Empty. I will be notified, and then you will automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Image::Empty
You can also look for information at:
RT: CPAN's request tracker (report bugs here)
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
Search CPAN
ACKNOWLEDGEMENTS
I can not actually remember where the original line came from to produce the gif content.
LICENSE AND COPYRIGHT
Copyright 2012 Rob Brown.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.