Skip to main content

Generate JPG and WEBP Images and Thumbnails in predefined sizes.

Project description

lektor image resize plugin

PyPI version Downloads Linting Python package Upload Python Package MIT License

This plugin generates JPG and WEBP Images and Thumbnails in predefined sizes for any images in your Lektor content. The difference between this plugin and the lektor thumbnail filter is that this plugin is converting all images and you don't need to have any references to the images in your templates.

TL;DR: What does this plugin do?

  • It will generate JPEG images in the sizes you configured of all images in your Lektor content using imagemagic.
  • It will generate WEBP images in the same sizes using imagemagic.

Usage

Use this plugin if you want to be able to link to full-size images in your content, but still want thumbnails to be generated for the link itself. For example, you may have an image called waffle.jpg, and to link to it in the content (not the template), but also show a thumbnail. All images will be converted to webp using Pillow.

You can use the images like that:

<!-- Simple example -->
<a href="waffle.jpg"><img src="waffle-small.jpg" /></a>

<!-- example with srcset -->
<a href="waffle-small.webp">
  <img src="waffle-small.webp"
    srcset="waffle-small.webp  640w,   // Viewport bis zu 640
            waffle-medium.webp 1280w,  // Viewport größer als 1280
            waffle-woowee.webp 1920w"  // Viewport größer als 1920
  />
</a>

Installation

To install the plugin, add lektor-image-resize to your plugins from the command line and create a config file:

# add the plugin to lektor
lektor plugins add lektor-image-resize

If you have trouble, see the plugin installation section of the Lektor documentation.

Create a config file called configs/image-resize.ini and add a few sections for images. The section names can be whatever you want, the final images will be called $(imagename)-$(sectionname).jpg and $(imagename)-$(sectionname).webp.

Here is a example config file:

[small]
width = 640
height = 360

[medium]
height = 720

[woowee]
width = 1920

Will take a file called waffle.jpg and create the files waffle-small.jpg, waffle-medium.jpg and waffle-woowee.jpg as well as waffle-small.webp, waffle-medium.webp and waffle-woowee.webp All the files will be created, regardless of whether the original file is smaller, so you can link without worrying whether a file will exist or not. If the original file is smaller than the width you have specified, the file will only be copied, and will not be resized.

The max_width/max_height parameters work like for the Lektor thumbnail command.

Good to know

There is a filter plugin avaliable at lektor-image-filter available, that can help you to use the image in all configured sizes,

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lektor-image-resize-1.0.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

lektor_image_resize-1.0.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file lektor-image-resize-1.0.0.tar.gz.

File metadata

  • Download URL: lektor-image-resize-1.0.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for lektor-image-resize-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2df994397c245f50624b94a764bc6550bd416c1ece60e7a36ffbd561c5c719d6
MD5 ba19efc28ed07c2a60e8a9206843d877
BLAKE2b-256 11974a25477a318b7468b2dad036cb288be9c526b7ba74b5682915ec82d62415

See more details on using hashes here.

File details

Details for the file lektor_image_resize-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: lektor_image_resize-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for lektor_image_resize-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ef4ee974100715ca2c22d52a2c10efa103ebacc4095a2fb5da64d1e46bfe2145
MD5 8989ee903b6cdfe994eb65147a92be58
BLAKE2b-256 30230fe2522cba9ee43bd1f662fd6fc42b979caeafb811a1559684463f0f4d8e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page