The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Apache::Gallery - mod_perl handler to create an image gallery

SYNOPSIS

See the INSTALL file in the distribution for installation instructions.

DESCRIPTION

Apache::Gallery creates an thumbnail index of each directory and allows viewing pictures in different resolutions. Pictures are resized on the fly and cached. The gallery can be configured and customized in many ways and a custom copyright image can be added to all the images without modifying the original.

CONFIGURATION

In your httpd.conf you set the global options for the gallery. You can also override each of the options in .htaccess files in your gallery directories.

The options are set in the httpd.conf/.htaccess file using the syntax: PerlSetVar OptionName 'value'

Example: PerlSetVar InlineDir '/tmp/inline'

InlineDir

Full path to the directory Inline should compile the inline c-code and store the shared objects. This is also where you can find debug information if the c-code fails to compile.

Defaults to '/tmp'

GalleryTemplateDir

Full path to the directory where you placed the templates. This option can be used both in your global configuration and in .htaccess files, this way you can have different layouts in different parts of your gallery.

No default value, this option is required.

GalleryInfo

With this option you can define which EXIF information you would like to present from the image. The format is: '<MyName => KeyInEXIF, MyOtherName => OtherKeyInEXIF'

Examples of keys: ShutterSpeedValue, ApertureValue, SubjectDistance, and Camera

You can view all the keys from the EXIF header using this perl-oneliner:

perl -e 'use Data::Dumper; use Image::Info qw(image_info); print Dumper(image_info(shift));' filename.jpg

Default is: 'Picture Taken => DateTimeOriginal, Flash => Flash'

GallerySizes

Defines which widths images can be scaled to. Images cannot be scaled to other widths than the ones you define with this option.

The default is '640 1024 1600 2272'

GalleryThumbnailSize

Defines the width and height of the thumbnail images.

Defaults to '100x75'

GalleryCopyrightImage

Image you want to blend into your images in the lower right corner. This could be a transparent png saying "copyright my name 2001".

Optional.

GalleryWrapNavigation

Make the navigation in the picture view wrap around (So Next at the end displays the first picture, etc.)

Set to 1 or 0, default is 0

GalleryAllowOriginal

Allow the user to download the Original picture without resizing or putting the CopyrightImage on it.

Set to 1 or 0, default is 0

FEATURES

Rotate images

Pictures can be rotated on the fly without modifying the original image.

To use this functionality you have to create file with the name of the picture you want rotated appened with ".rotate". The file should include a number where these numbers are supported:

"1", rotates clockwise by 90 degree
"2", rotates clockwise by 180 degrees
"3", rotates clockwise by 270 degrees

So if we want to rotate "Picture1234.jpg" 90 degrees clockwise we would create a file in the same directory called "Picture1234.jpg.rotate" with the number 1 inside of it.

Comments

To include comments for each picture you create files called picture.jpg.comment where the first line can contain "TITLE: New title" which will be the title of the page, and a comment on the following lines.

Example: TITLE: This is the new title of the page And this is the comment.<br> And this is line two of the comment.

DEPENDENCIES

Perl 5.6
Apache with mod_perl
Apache::Request
URI::Escape
Image::Info
CGI::FastTemplate
Inline::C
X11 libraries (ie, XFree86)
Imlib2 Remember the -dev package when using rpm, deb or other package formats!

AUTHOR

Michael Legart <michael@legart.dk>

COPYRIGHT AND LICENSE

Copyright (C) 2001-2002 Michael Legart <michael@legart.dk>

Templates designed by Thomas Kjaer <tk@lnx.dk>

Apache::Gallery is free software and is released under the Artistic License. See http://www.perl.com/language/misc/Artistic.html for details.

The video icons are from the GNOME project. http:://www.gnome.org/

THANKS

Thanks to Thomas Kjaer for templates and design of http://apachegallery.dk and thanks to Thomas Eibner for patches.

SEE ALSO

perl, mod_perl, Apache::Request, Inline::C, CGI::FastTemplate, and Image::Info.