From cd61c4efd9ef369d1ca707cda6c7824df42b8a60 Mon Sep 17 00:00:00 2001 From: "James R. Barlow" Date: Wed, 18 Oct 2023 23:22:29 -0700 Subject: [PATCH] pngquant: remove unused ability to quantize a non-PNG Covering testing showed this branch was never used, and when tested it didn't work. --- src/ocrmypdf/_exec/pngquant.py | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/src/ocrmypdf/_exec/pngquant.py b/src/ocrmypdf/_exec/pngquant.py index 8425caec..3fa94277 100644 --- a/src/ocrmypdf/_exec/pngquant.py +++ b/src/ocrmypdf/_exec/pngquant.py @@ -5,13 +5,10 @@ from __future__ import annotations -from contextlib import contextmanager -from io import BytesIO from pathlib import Path from subprocess import PIPE from packaging.version import Version -from PIL import Image from ocrmypdf.exceptions import MissingDependencyError from ocrmypdf.subprocess import get_version, run @@ -29,21 +26,16 @@ def available(): return True -@contextmanager -def input_as_png(input_file: Path): - if not input_file.name.endswith('.png'): - with Image.open(input_file) as im: - bio = BytesIO() - im.save(bio, format='png') - bio.seek(0) - yield bio - else: - with open(input_file, 'rb') as f: - yield f - - def quantize(input_file: Path, output_file: Path, quality_min: int, quality_max: int): - with input_as_png(input_file) as input_stream: + """Quantize a PNG image using pngquant. + + Args: + input_file: Input PNG image + output_file: Output PNG image + quality_min: Minimum quality to use + quality_max: Maximum quality to use + """ + with open(input_file, 'rb') as input_stream: args = [ 'pngquant', '--force',