Andrew Murray
Andrew Murray
Resolves #6588 For NumPy < 1.23, if an error is raised when converting an image to a NumPy array, #6394 allowed NumPy to catch that, preventing the user from seeing...
Resolves #6590 At the moment, the first frame of a GIF is never RGBA. https://github.com/python-pillow/Pillow/blob/b8d96246f71753cbd8aaafc6dc633cad3aad0317/src/PIL/GifImagePlugin.py#L302-L308 This PR changes it to be RGBA if there is transparency and `LoadingStrategy.RGB_ALWAYS` is used....
Resolves #6515 If `align="center"` is used for `multiline_text`, https://github.com/python-pillow/Pillow/blob/4c59f77e37e7333544a5d0910de8148f7972ed06/src/PIL/ImageDraw.py#L562-L570 then `coord` can be a float for the `embedded_color` paste. But when pasting one image onto another, the co-ordinates must be...
Resolves #6580 As seen before in #4677, WebP images do not require the `b"Exif\x00\x00"` prefix in their EXIF data. This PR removes it when saving, for the sake of creating...
#6060 contained a commit entitled "[Allow getpalette() to return less than 256 colors](https://github.com/python-pillow/Pillow/pull/6060/commits/948c064b282f80492f5b88d3f06a599b76516edf)" This meant that there were fewer bytes when saving in IM. https://github.com/python-pillow/Pillow/blob/1d1a22bde37baaf162f4dd26e7b94cd96d3116a2/src/PIL/ImImagePlugin.py#L355 But IM still expected 768...
Resolves #6571 When pasting an L frame onto an RGB(A) GIF, convert the frame to RGB(A) first. The test image was created using a modified Pillow, so that there is...
Helps #6482 by adding reading of TIFF [child images](https://www.awaresystems.be/imaging/tiff/tifftags/subifds.html) - a series of offsets to child IFDs. There are two test files here. - One was created using tifffile, with...
Addresses #6561 The discussion points out that `Image.fromarray(a, "P")` is slower than `Image.fromarray(a, "L")`. The difference is that when [`fromarray` calls `frombuffer`](https://github.com/python-pillow/Pillow/blob/d843759ca9e0295032c5123508798cfdc9aaf6ce/src/PIL/Image.py#L2974), for P mode [an ImagePalette instance is created](https://github.com/python-pillow/Pillow/blob/d843759ca9e0295032c5123508798cfdc9aaf6ce/src/PIL/Image.py#L2894-L2897)....
Resolves #6558 Runs [`apply_transparency()`](https://pillow.readthedocs.io/en/stable/reference/Image.html#PIL.Image.Image.apply_transparency) on P mode images when passing them to `tkinter.PhotoImage`. This will move the transparency from `info` into the palette in a P mode image, so that...