From 3e5611da7363852144f8c0ca1d698b5cbbd4fa21 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 24 Nov 2023 08:10:45 +0530 Subject: [PATCH] More fixes for PIL breaking its API --- recipes/dunyahalleri_haftaninozeti.recipe | 2 +- src/calibre/devices/android/driver.py | 6 +++--- src/calibre/devices/cybook/t2b.py | 2 +- src/calibre/devices/cybook/t4b.py | 2 +- src/calibre/devices/nook/driver.py | 2 +- src/calibre/ebooks/conversion/plugins/pml_output.py | 2 +- src/calibre/ebooks/lrf/html/convert_from.py | 2 +- src/calibre/ebooks/pdb/ereader/writer.py | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/recipes/dunyahalleri_haftaninozeti.recipe b/recipes/dunyahalleri_haftaninozeti.recipe index 60bedc5c5d..ffee94b494 100644 --- a/recipes/dunyahalleri_haftaninozeti.recipe +++ b/recipes/dunyahalleri_haftaninozeti.recipe @@ -263,7 +263,7 @@ class DunyaHalleri_HaftaninOzeti(BasicNewsRecipe): logo = Image.open(logo_file, 'r') width, height = logo.size logo = logo.resize( - (self.COVER_WIDTH, (self.COVER_WIDTH * height / width)), Image.ANTIALIAS) + (self.COVER_WIDTH, (self.COVER_WIDTH * height / width)), Image.Resampling.LANCZOS) width, height = logo.size left = max(int((self.COVER_WIDTH - width) / 2.), 0) top = max(int((self.COVER_HEIGHT - height) / 2.), 0) diff --git a/src/calibre/devices/android/driver.py b/src/calibre/devices/android/driver.py index e43005344f..3c75c760a2 100644 --- a/src/calibre/devices/android/driver.py +++ b/src/calibre/devices/android/driver.py @@ -390,7 +390,7 @@ class WEBOS(USBMS): cover = Image.new('RGB', (120,160), 'black') im = Image.open(io.BytesIO(coverdata)) - im.thumbnail((120, 160), Image.ANTIALIAS) + im.thumbnail((120, 160), Image.Resampling.LANCZOS) x, y = im.size cover.paste(im, ((120-x)/2, (160-y)/2)) @@ -415,12 +415,12 @@ class WEBOS(USBMS): cover = Image.new('RGB', (52,69), 'black') im = Image.open(io.BytesIO(coverdata)) - im.thumbnail((52, 69), Image.ANTIALIAS) + im.thumbnail((52, 69), Image.Resampling.LANCZOS) x, y = im.size cover.paste(im, ((52-x)//2, (69-y)//2)) - cover2 = cover.resize((52, 69), Image.ANTIALIAS).convert('RGB') + cover2 = cover.resize((52, 69), Image.Resampling.LANCZOS).convert('RGB') data = io.BytesIO() cover2.save(data, 'JPEG') diff --git a/src/calibre/devices/cybook/t2b.py b/src/calibre/devices/cybook/t2b.py index d43380c087..2aab959e2e 100644 --- a/src/calibre/devices/cybook/t2b.py +++ b/src/calibre/devices/cybook/t2b.py @@ -34,7 +34,7 @@ def write_t2b(t2bfile, coverdata=None): if coverdata is not None: coverdata = io.BytesIO(coverdata) cover = Image.open(coverdata).convert("L") - cover.thumbnail((96, 144), Image.ANTIALIAS) + cover.thumbnail((96, 144), Image.Resampling.LANCZOS) t2bcover = Image.new('L', (96, 144), 'white') x, y = cover.size diff --git a/src/calibre/devices/cybook/t4b.py b/src/calibre/devices/cybook/t4b.py index 22487d363d..bc9fc5a108 100644 --- a/src/calibre/devices/cybook/t4b.py +++ b/src/calibre/devices/cybook/t4b.py @@ -22,7 +22,7 @@ def write_t4b(t4bfile, coverdata=None): if coverdata is not None: coverdata = BytesIO(coverdata) cover = Image.open(coverdata).convert("L") - cover.thumbnail((96, 144), Image.ANTIALIAS) + cover.thumbnail((96, 144), Image.Resampling.LANCZOS) t4bcover = Image.new('L', (96, 144), 'white') x, y = cover.size diff --git a/src/calibre/devices/nook/driver.py b/src/calibre/devices/nook/driver.py index b37a916c94..6e77efce8d 100644 --- a/src/calibre/devices/nook/driver.py +++ b/src/calibre/devices/nook/driver.py @@ -57,7 +57,7 @@ class NOOK(USBMS): cover = Image.new('RGB', (96, 144), 'black') im = Image.open(io.BytesIO(coverdata)) - im.thumbnail((96, 144), Image.ANTIALIAS) + im.thumbnail((96, 144), Image.Resampling.LANCZOS) x, y = im.size cover.paste(im, ((96-x)/2, (144-y)/2)) diff --git a/src/calibre/ebooks/conversion/plugins/pml_output.py b/src/calibre/ebooks/conversion/plugins/pml_output.py index 16c59d8811..b1a6a09a40 100644 --- a/src/calibre/ebooks/conversion/plugins/pml_output.py +++ b/src/calibre/ebooks/conversion/plugins/pml_output.py @@ -61,7 +61,7 @@ class PMLOutput(OutputFormatPlugin): im = Image.open(io.BytesIO(item.data)) else: im = Image.open(io.BytesIO(item.data)).convert('P') - im.thumbnail((300,300), Image.ANTIALIAS) + im.thumbnail((300,300), Image.Resampling.LANCZOS) data = io.BytesIO() im.save(data, 'PNG') diff --git a/src/calibre/ebooks/lrf/html/convert_from.py b/src/calibre/ebooks/lrf/html/convert_from.py index c81d1dcdd4..bf6a7263ed 100644 --- a/src/calibre/ebooks/lrf/html/convert_from.py +++ b/src/calibre/ebooks/lrf/html/convert_from.py @@ -939,7 +939,7 @@ class HTMLConverter: pt = PersistentTemporaryFile(suffix='_html2lrf_scaled_image_.'+encoding.lower()) self.image_memory.append(pt) # Necessary, trust me ;-) try: - im.resize((int(width), int(height)), PILImage.ANTIALIAS).save(pt, encoding) + im.resize((int(width), int(height)), PILImage.Resampling.LANCZOS).save(pt, encoding) pt.close() self.scaled_images[path] = pt return pt.name diff --git a/src/calibre/ebooks/pdb/ereader/writer.py b/src/calibre/ebooks/pdb/ereader/writer.py index 385681238a..eb6898b2c9 100644 --- a/src/calibre/ebooks/pdb/ereader/writer.py +++ b/src/calibre/ebooks/pdb/ereader/writer.py @@ -135,7 +135,7 @@ class Writer(FormatWriter): if item.media_type in OEB_RASTER_IMAGES and item.href in image_hrefs.keys(): try: im = Image.open(io.BytesIO(item.data)).convert('P') - im.thumbnail((300,300), Image.ANTIALIAS) + im.thumbnail((300,300), Image.Resampling.LANCZOS) data = io.BytesIO() im.save(data, 'PNG')