A minimalist library to render PNG images using pure Python
Python Makefile
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
.travis.yml
AUTHORS
LICENSE
MANIFEST.in
Makefile
README.md
pngcanvas.py
reference-multi-idat.png
reference-rgb.png
reference.png
requirements.txt
setup.py
setuputils.py
test_pngcanvas.py

README.md

pngcanvas

Build Status PyPI Version Downloads

A minimalist library to render PNG images using pure Python inspired by Thomas Fuchs' spark_pr library, originally published here in 2005.

Given that I get a couple of mails about it every quarter or so, and that it's been consistently popular with the Google App Engine crowd, I decided to release it under the MIT license and welcome any contributions towards speeding it up, cleaning it up and making it generally more useful.

So ping me if you want commit access (or just send me a pull request with any enhancements).

Features

As it stands, you can do the following things with a PNGCanvas instance:

  • Set single pixels
  • Draw antialiased lines and polylines
  • Draw rectangles (outlined and filled)
  • Draw vertical gradients
  • Copy (and blend) a rectangular segment of the image onto another location
  • Save it as a PNG file
  • Load a PNG file into it (with some restrictions)

...all of it in pure Python.