
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
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 Instakit
_!
For the complete documentation on the latest stable version of PILKit, see
PILKit on RTD
_.
.. image:: https://github.com/matthewwithanm/pilkit/workflows/Python%20CI/badge.svg :target: https://github.com/matthewwithanm/pilkit/actions?query=workflow%3A%22Python+CI%22
.. _PILKit on RTD
: http://pilkit.readthedocs.org
.. _Instakit
: https://github.com/fish2000/instakit
PIL
_ or Pillow
_.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.
.. _PIL
: http://pypi.python.org/pypi/PIL
.. _Pillow
: http://pypi.python.org/pypi/Pillow
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:
ResizeToFit
ResizeToFill
SmartResize
Adjust
TrimBorderColor
Transpose
There's also a ProcessorPipeline
class for executing processors
sequentially:
.. 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:
prepare_image
Prepares the image for saving to the provided format by doing some
common-sense conversions, including preserving transparency and quantizing.
save_image
Wraps PIL's Image.save()
method in order to gracefully handle PIL's
"Suspension not allowed here" errors, and (optionally) prepares the image
using prepare_image
Utilities are also included for converting between formats, extensions, and mimetypes.
Please use 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
off.)
.. _django-imagekit
: https://github.com/jdriscoll/django-imagekit
FAQs
A collection of utilities and processors for the Python Imaging Library.
We found that pilkit demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.