3.3.0¶
Libimagequant support¶
There is now support for using libimagequant as a higher quality
quantization option in Image.quantize()
on Unix-like
platforms. This support requires building Pillow from source against
libimagequant. We cannot distribute binaries due to licensing
differences.
New Setup.py options¶
There are two new options to control the build_ext
task in setup.py
:
--debug
dumps all of the directories and files that are checked when searching for libraries or headers when building the extensions.
--disable-platform-guessing
removes many of the directories that are checked for libraries and headers for build systems or cross compilers that specify that information in via environment variables.
Resizing¶
Image resampling for 8-bit per channel images was rewritten using only integer computings. This is faster on most platforms and doesn’t introduce precision errors on the wide range of scales. With other performance improvements, this makes resampling 60% faster on average.
Color calculation for images in the LA
mode on semitransparent pixels
was fixed.
Rotation¶
Rotation for angles divisible by 90 degrees now always uses transposition. This greatly improves both quality and performance in this case. Also, the bug with wrong image size calculation when rotating by 90 degrees was fixed.
Image Metadata¶
The return type for binary data in version 2 Exif and Tiff metadata
has been changed from a tuple of integers to bytes. This is a change
from the behavior since 3.0.0
.