]> git.ipfire.org Git - ipfire.org.git/blobdiff - src/backend/util.py
docs: Deliver images with a better quality (and larger size)
[ipfire.org.git] / src / backend / util.py
index 4f85b7408240d62eb4d25cd85738d74f05f6a30e..9afc6e67a2665021466df160869cc3c95405edef 100644 (file)
@@ -206,7 +206,7 @@ def normalize(s):
 
        return "-".join(s.split())
 
-def generate_thumbnail(image, size, square=False, format=None, **args):
+def generate_thumbnail(image, size, square=False, format=None, quality=None, **args):
        assert image, "No image data received"
 
        if not isinstance(image, PIL.Image.Image):
@@ -271,17 +271,17 @@ def generate_thumbnail(image, size, square=False, format=None, **args):
        # Arguments to optimise the compression
        args.update({
                "subsampling" : "4:2:0",
-               "quality"     : 72,
+               "quality"     : quality or 72,
        })
 
        if image.format == "JPEG":
                args.update({
-                       "qtables"      : "web_low",
+                       "qtables" : "web_low",
                })
 
        elif image.format == "WEBP":
                args.update({
-                       "lossless"    : False,
+                       "lossless" : False,
                })
 
        with io.BytesIO() as f: