PILKit is a collection of utilities for working with PIL (the Python Imaging Library).
One of its main features is a set of processors which expose a simple interface for performing manipulations on PIL images.
Looking for more advanced processors? Check out
For the complete documentation on the latest stable version of PILKit, see
PILKit on RTD_.
.. image:: https://api.travis-ci.org/matthewwithanm/pilkit.png :target: https://travis-ci.org/matthewwithanm/pilkit
PILKit on RTD: http://pilkit.readthedocs.org
pip install pilkit(or clone the source and put the pilkit module on your path)
.. note:: If you've never seen Pillow before, it considers itself a more-frequently updated "friendly" fork of PIL that's compatible with setuptools. As such, it shares the same namespace as PIL does and is a drop-in replacement.
The "pilkit.processors" module contains several classes for processing PIL images, which provide an easy to understand API:
.. code-block:: python
from pilkit.processors import ResizeToFit img = Image.open('/path/to/my/image.png') processor = ResizeToFit(100, 100) new_img = processor.process(img)
A few of the included processors are:
There's also a
ProcessorPipeline class for executing processors
.. code-block:: python
from pilkit.processors import ProcessorPipeline, ResizeToFit, Adjust img = Image.open('/path/to/my/image.png') processor = ProcessorPipeline([Adjust(color=0), ResizeToFit(100, 100)]) new_image = processor.process(img)
In addition to the processors, PILKit contains a few utilities to ease the pain of working with PIL. Some examples:
Prepares the image for saving to the provided format by doing some
common-sense conversions, including preserving transparency and quantizing.
Image.save() method in order to gracefully handle PIL's
"Suspension not allowed here" errors, and (optionally) prepares the image
Utilities are also included for converting between formats, extensions, and mimetypes.
the GitHub issue tracker <https://github.com/matthewwithanm/pilkit/issues>
to report bugs.
A mailing list <https://groups.google.com/forum/#!forum/django-imagekit>
also exists to discuss the project and ask questions, as well as the official
#imagekit <irc://irc.freenode.net/imagekit> channel on Freenode. (Both of
these are shared with the
django-imagekit project—from which PILKit spun