Consider default image when selecting mode for PNG save_all #7437
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #7459
Sequel to #6610
While that PR theoretically considers all images, and "upgrades" images to more complex modes, it did not consider the default image.
Pillow/src/PIL/PngImagePlugin.py
Lines 1230 to 1239 in aaa7587
This means that when the default image is saved with the chosen mode, it may not be the ideal choice. This PR considers the mode of the default image, and converts the default image before saving if needed.
Because that PR made it so that P images are "upgraded" to RGB if there are any RGB images present, a RGB to P conversion will no longer occur at
Pillow/src/PIL/PngImagePlugin.py
Lines 1102 to 1110 in aaa7587
meaning that the palette argument is unneeded.
Pillow/src/PIL/Image.py
Lines 907 to 909 in aaa7587