Thumbnailer is a Pelican plugin that creates thumbnails for all of the images found under a specific directory, in various thumbnail sizes.
This plugin can be installed via:
python -m pip install pelican-thumbnailer
Pillow will be automatically installed in order to resize the images, and the thumbnail will only be re-built if it doesn't already exist (to save processing time). Depending on your local environment and your image types, you may need to also install external libraries to add support for certain image file formats.
As long as you have not explicitly added a PLUGINS
setting to your Pelican settings file, then the newly-installed plugin should be automatically detected and enabled. Otherwise, you must add thumbnailer
to your existing PLUGINS
list. For more information, please see the How to Use Plugins documentation.
IMAGE_PATH
is the path to the image directory. It should reside inside your content directory, and defaults topictures
.THUMBNAIL_DIR
is the path to the output sub-directory where the thumbnails are generated.THUMBNAIL_SIZES
is a dictionary mapping size name to size specifications. The generated filename will beoriginalname_thumbnailname.ext
unlessTHUMBNAIL_KEEP_NAME
is set.THUMBNAIL_KEEP_NAME
is a Boolean that, if set, puts the file with the original name in athumbnailname
folder, named like the key inTHUMBNAIL_SIZES
.THUMBNAIL_KEEP_TREE
is a Boolean that, if set, saves the image directory tree.THUMBNAIL_INCLUDE_REGEX
is an optional string that is used as regular expression to restrict thumbnailing to matching files. By default all files not starting with a dot are respected.
Sizes can be specified using any of the following formats:
wxh
will resize to exactlywxh
cropping as necessary to get that sizewx?
will resize so that the width is the specified size, and the height will scale to retain aspect ratio?xh
same aswx?
but will height being a set sizes
is a shorthand forwxh
wherew=h
Contributions are welcome and much appreciated. Every little bit helps. You can contribute by improving the documentation, adding missing features, and fixing bugs. You can also help out by reviewing and commenting on existing issues.
To start contributing to this plugin, review the Contributing to Pelican documentation, beginning with the Contributing Code section.