Skip to content

Commit

Permalink
Merge pull request #6095 from radarhere/pyencoder
Browse files Browse the repository at this point in the history
  • Loading branch information
hugovk committed Feb 28, 2022
2 parents 2f2b48d + f2987d6 commit 37d28ce
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
14 changes: 14 additions & 0 deletions docs/releasenotes/9.1.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,13 @@ By default, :py:meth:`~PIL.Image.Image.getpalette` returns RGB data from the pal
A ``rawmode`` argument has been added, to allow the mode to be chosen instead. ``None``
can be used to return data in the current mode of the palette.

Added PyEncoder
^^^^^^^^^^^^^^^

:py:class:`~PIL.ImageFile.PyEncoder` has been added, allowing for file encoders to be
written in Python. See :ref:`Writing Your Own File Codec in Python<file-codecs-py>` for
more information.

Other Changes
=============

Expand All @@ -169,3 +176,10 @@ Image._repr_pretty_
``im._repr_pretty_`` has been added to provide a representation of an image without the
identity of the object. This allows Jupyter to describe an image and have that
description stay the same on subsequent executions of the same code.

Added BLP saving
^^^^^^^^^^^^^^^^

Support has been added for saving BLP images. ``blp_version`` can be used to specify
whether the image should be saved as BLP1 or BLP2, e.g.
``im.save("out.blp", blp_version="BLP1")``. By default, BLP2 will be used.
2 changes: 2 additions & 0 deletions src/PIL/ImageFile.py
Original file line number Diff line number Diff line change
Expand Up @@ -702,6 +702,8 @@ class PyEncoder(PyCodec):
"""
Python implementation of a format encoder. Override this class and
add the decoding logic in the :meth:`encode` method.
See :ref:`Writing Your Own File Codec in Python<file-codecs-py>`
"""

_pushes_fd = False
Expand Down

0 comments on commit 37d28ce

Please sign in to comment.