thumbnail_tag.wmk
< use plugin="thumbnail_tag" />
< thumbnail name="filename.jpg" [text="template"]
[bordercolor="black"] [borderwidth="1"] [format="jpg"] />
<{perl
make_thumbnail_table (3, @names_of_images);
}>
This WebMake Perl library provides a quick shortcut to make thumbnail links
to full-sized images, suitable for use in a photo album site or similar.
The library provides support for a < thumbnail > tag, which creates a
thumbnail of one image, and some helper functions for creating thumbnail
pages with lots of images.
The attributes supported by the < thumbnail > tag are as follows:
-
name="imagename"
-
The image to link to. This should be the name of a URL reference, loaded
from a < media > search, not the filename of the image itself.
-
borderwidth="n"
-
If you wish to draw a border around the images, this specifies the border
width (in pixels). The default value is 1. This can also be specified by
setting a template content item called thumbnail.borderwidth .
-
bordercolor="#xxxxxx"
-
The border colour to draw image borders in. The default value is ``black''
(or
#000000 ). This can also be specified by setting a template content item called thumbnail.bordercolor .
-
format="fmt"
-
The format to use for thumbnail images; default is ``jpg''. Also available:
``gif'' or ``png''. Any reasonable ImageMagick-supported format will work.
-
text="template"
-
The template text to be used for the thumbnail link and img tags. The
following content items are defined for use inside the template text. This
can also be specified by setting a template content item called
thumbnail.template .
-
thumbnail.name
-
The name of the image (not the filename, the < media > item name).
-
thumbnail.path
-
The image file's path, with directories.
-
thumbnail.filename
-
The image file's name, without directories.
-
thumbnail.href
-
The path to the full-sized image file, relative to the current output file.
-
thumbnail.thumb_src
-
The path to the thumbnail-sized version of the image file, relative to the
current output file.
-
thumbnail.size_in_k
-
The full-sized image file's size, in kilobytes (rounded up).
-
thumbnail.size
-
The full-sized image file's size, in bytes.
-
thumbnail.full_height / thumbnail.full_width
-
The full-sized image file's height and width, in pixels.
-
thumbnail.height / thumbnail.width
-
The thumbnail-sized image file's height and width, in pixels.
-
thumbnail.tag_attrs
-
The remaining attributes of the thumbnail tag.
template can be, and should often be, a $ {content_reference}. The default template
is:
< div align=center >
< a href="$ {thumbnail.href}" >< img
src="$ {thumbnail.thumb_src}" alt="[$ {thumbnail.filename}]"
height="$ {thumbnail.height}" width="$ {thumbnail.width}"
border="0" $ {thumbnail.tag_attrs} / >< /a >
< br / >
$ [$ {thumbnail.name}.title]
< br / >
< /div >
Note that this means that any unrecognised attributes of the thumbnail tag
itself will become attributes of the IMG tag.
The following Perl functions are provided:
-
$text = make_thumbnail_table ($pics_per_row, @names_of_images);
-
This function will lay out a table containing thumbnails, with up to
$pics_per_row pictures on each row. The following template content items can be set to
customise the behaviour of this tag:
-
$ {thumbnail.table.td}
-
The template used to wrap each thumbnail. References to $
{thumbnail.table.item} will be replaced with the output from the <
thumbnail > tag itself. Default setting:
< td valign=top > $ {thumbnail.table.item} < /td >
-
$ {thumbnail.table.tr}
-
The template used to wrap each row of thumbnails. References to $
{thumbnail.table.tds} will be replaced with the output from the $
{thumbnail.table.td} templates so far for this row. Default setting:
< tr > $ {thumbnail.table.tds} < /tr >
Note that you will have to wrap this up in a < table > tag yourself
;)
The file examples/thumbnails.wmk in the WebMake distribution.
FileSearchPath - WebMake option
|