From 9a78e379364e7c31cf4810c3e302090087efb900 Mon Sep 17 00:00:00 2001 From: Dov Grobgeld Date: Mon, 7 Feb 2022 15:24:36 +0200 Subject: [PATCH] Add support for 1-bit images to ImageOps.invert() --- src/PIL/ImageOps.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/PIL/ImageOps.py b/src/PIL/ImageOps.py index b170e9d8c..b513776a4 100644 --- a/src/PIL/ImageOps.py +++ b/src/PIL/ImageOps.py @@ -520,6 +520,11 @@ def invert(image): :param image: The image to invert. :return: An image. """ + # Special case for 1-bit images using python translate() method + if image.mode == '1': + lut = bytearray(range(255,-1,-1)) + return Image.frombuffer('1',image.size,image.tobytes().translate(lut)) + lut = [] for i in range(256): lut.append(255 - i)