9.3.0#

Backwards Incompatible Changes#

TODO#

Deprecations#

TODO#

TODO

API Changes#

TODO#

TODO

API Additions#

Allow default ImageDraw font to be set#

Rather than specifying a font when calling text-related ImageDraw methods, or setting a font on each ImageDraw instance, the default font can now be set for all future ImageDraw operations:

from PIL import ImageDraw, ImageFont
ImageDraw.ImageDraw.font = ImageFont.truetype("Tests/fonts/FreeMono.ttf")

Saving multiple MPO frames#

Multiple MPO frames can now be saved. Using the save_all argument, all of an image’s frames will be saved to file:

from PIL import Image
im = Image.open("frozenpond.mpo")
im.save(out, save_all=True)

Additional images can also be appended when saving, by combining the save_all argument with the append_images argument:

im.save(out, save_all=True, append_images=[im1, im2, ...])

Security#

TODO#

TODO

Other Changes#

Added DDS ATI1 and ATI2 reading#

Support has been added to read the ATI1 and ATI2 formats of DDS images.