Andrew Murray
Andrew Murray
Resolves #8977 With each new frame that is saved to an MPO image, an offset is added https://github.com/python-pillow/Pillow/blob/086e05f42ff459747c2ceb0e8e046f4b54e4d779/src/PIL/MpoImagePlugin.py#L65-L68 leading to a longer `mpentries` https://github.com/python-pillow/Pillow/blob/086e05f42ff459747c2ceb0e8e046f4b54e4d779/src/PIL/MpoImagePlugin.py#L81 meaning the IFD becomes longer https://github.com/python-pillow/Pillow/blob/086e05f42ff459747c2ceb0e8e046f4b54e4d779/src/PIL/MpoImagePlugin.py#L85...
https://github.com/python-pillow/Pillow/issues/861#issuecomment-2967698512 requests that we support saving I;16L TIFF images. While there, I noticed that [`SAVE_INFO`](https://github.com/python-pillow/Pillow/blob/2e5117305b86852f3cd21fe604eb966e09ec308e/src/PIL/TiffImagePlugin.py#L1673C1-L1700) has entries for a few modes that [don't exist](https://pillow.readthedocs.io/en/stable/handbook/concepts.html#modes) - I;16S, I;32BS, I;16BS and F;32BF....
Resolves #8963. Alternative to #8974 Originally, additional `im.save()` parameters were applied to every frame when saving. Then, #8483 added a generic way to set specific options when saving subsequent frames...
This is part of https://github.com/python-pillow/Pillow/pull/8362 - I'm hoping to break down that PR into easier-to-review chunks. 1. A tile's `args` might be a tuple, string or None. https://github.com/python-pillow/Pillow/blob/c8d98d56a02e0729f794546d6f270b3cea5baecf/src/PIL/ImageFile.py#L101-L105 Assert that...
With ruff-pre-commit 0.11.10, https://github.com/astral-sh/ruff-pre-commit/pull/124 was included, which prefers `ruff-check` to the `ruff` ID in pre-commit.
This is part of #8362 - I'm hoping to break down that PR into easier-to-review chunks. ImageFile's `fp` may be `None`. ```pycon >>> from PIL import Image >>> im =...
Resolves #8982 See [PEP 489](https://peps.python.org/pep-0489/)
Resolves #8965. Alternative to #8966 and #8978 A user has found an image where the [ExposureBiasValue](https://web.archive.org/web/20181105221156/https://www.awaresystems.be/imaging/tiff/tifftags/privateifd/exif/exposurebiasvalue.html) signed rational TIFF tag has a negative numerator but a zero denominator. When this...
Update the winbuild libavif URL to match https://github.com/python-pillow/Pillow/blob/cda26be10e93472cca7cc2c07c045037572d9b38/.github/workflows/wheels-dependencies.sh#L135
Resolves #8936 #8483 added a generic way to set additional options when saving subsequent frames. ```python from PIL import Image im = Image.open("Tests/images/hopper.png") second_im = Image.new("RGB", (128, 128)) second_im.encoderinfo =...