Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Native mixin to speed up ChunkyPNG.
C Ruby

Merge pull request #14 from jappelbe/master

Added c extensions for Canvas#rotate_left! and Canvas#rotate_right!
latest commit 4d593c829f
Willem van Bergen authored


OilyPNG Build Status

OilyPNG is a Ruby C extension to speed up the pure Ruby ChunkyPNG library. It is a standalone module, so it does not require LibPNG, ImageMagick or any other library. Currently it has an alternative implementation of decoding and encoding PNGs, making these operations much faster, especially for PNG images that apply filtering.

Performance comparison:

Warning: this is my first C code in years. It may blow up your PC after leaking memory all over the place, killing a kitten in the process. You have been warned.


  1. First install the gem and make it available to your project.

  2. Use require “oily_png” instead of require “chunky_png”

  3. Presto! Now use ChunkyPNG as you normally would and get an instant speedup.

See for more information on how to use the ChunkyPNG API.


License: MIT (see LICENSE)

This C module is written by Willem van Bergen with help from Dirkjan Bussink.

Something went wrong with that request. Please try again.