This pure Ruby library can read and write PNG images without depending

on an external image library, like RMagick. It tries to be memory
efficient and reasonably fast.  It supports reading and writing all
PNG variants that are defined in the specification, with one
limitation: only 8-bit color depth is supported.

ok jeremy@ abieber@
This commit is contained in:
kmos 2022-08-11 14:38:25 +00:00
parent af1151f00e
commit 38d030e203
4 changed files with 387 additions and 0 deletions

View File

@ -0,0 +1,18 @@
COMMENT = pure ruby library for chunk-level access to PNG
DISTNAME = chunky_png-1.4.0
CATEGORIES = graphics
HOMEPAGE = https://github.com/wvanbergen/chunky_png/wiki
MAINTAINER = Kurt Mosiejczuk <kmos@openbsd.org>
# MIT
PERMIT_PACKAGE = Yes
MODULES = lang/ruby
CONFIGURE_STYLE = ruby gem
.include <bsd.port.mk>

View File

@ -0,0 +1,2 @@
SHA256 (chunky_png-1.4.0.gem) = idWzG1XAz02jz4mitOvDF42Kvoy68Rah26lWaFAv3P4=
SIZE (chunky_png-1.4.0.gem) = 363008

View File

@ -0,0 +1,5 @@
This pure Ruby library can read and write PNG images without depending
on an external image library, like RMagick. It tries to be memory
efficient and reasonably fast. It supports reading and writing all
PNG variants that are defined in the specification, with one
limitation: only 8-bit color depth is supported.

View File

@ -0,0 +1,362 @@
${GEM_LIB}/cache/${DISTNAME}.gem
${GEM_LIB}/gems/${DISTNAME}/
@comment ${GEM_LIB}/gems/${DISTNAME}/.github/
@comment ${GEM_LIB}/gems/${DISTNAME}/.github/workflows/
@comment ${GEM_LIB}/gems/${DISTNAME}/.github/workflows/ruby.yml
@comment ${GEM_LIB}/gems/${DISTNAME}/.gitignore
${GEM_LIB}/gems/${DISTNAME}/.standard.yml
${GEM_LIB}/gems/${DISTNAME}/.yardopts
${GEM_LIB}/gems/${DISTNAME}/BENCHMARKING.rdoc
${GEM_LIB}/gems/${DISTNAME}/CHANGELOG.rdoc
${GEM_LIB}/gems/${DISTNAME}/CONTRIBUTING.rdoc
${GEM_LIB}/gems/${DISTNAME}/Gemfile
${GEM_LIB}/gems/${DISTNAME}/LICENSE
${GEM_LIB}/gems/${DISTNAME}/README.md
@comment ${GEM_LIB}/gems/${DISTNAME}/Rakefile
${GEM_LIB}/gems/${DISTNAME}/benchmarks/
${GEM_LIB}/gems/${DISTNAME}/benchmarks/decoding_benchmark.rb
${GEM_LIB}/gems/${DISTNAME}/benchmarks/encoding_benchmark.rb
${GEM_LIB}/gems/${DISTNAME}/benchmarks/filesize_benchmark.rb
@comment ${GEM_LIB}/gems/${DISTNAME}/bin/
@comment ${GEM_LIB}/gems/${DISTNAME}/bin/rake
@comment ${GEM_LIB}/gems/${DISTNAME}/bin/standardrb
${GEM_LIB}/gems/${DISTNAME}/chunky_png.gemspec
${GEM_LIB}/gems/${DISTNAME}/docs/
${GEM_LIB}/gems/${DISTNAME}/docs/.gitignore
${GEM_LIB}/gems/${DISTNAME}/docs/CNAME
${GEM_LIB}/gems/${DISTNAME}/docs/_config.yml
${GEM_LIB}/gems/${DISTNAME}/docs/_posts/
${GEM_LIB}/gems/${DISTNAME}/docs/_posts/2010-01-14-memory-efficiency-when-using-ruby.md
${GEM_LIB}/gems/${DISTNAME}/docs/_posts/2010-01-17-ode-to-array-pack-and-string-unpack.md
${GEM_LIB}/gems/${DISTNAME}/docs/_posts/2014-11-07-the-value-of-a-pure-ruby-library.md
${GEM_LIB}/gems/${DISTNAME}/docs/index.md
${GEM_LIB}/gems/${DISTNAME}/lib/
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/adam7_interlacing.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/data_url_exporting.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/data_url_importing.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/drawing.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/masking.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/operations.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/png_decoding.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/png_encoding.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/resampling.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/stream_exporting.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/canvas/stream_importing.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/chunk.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/color.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/datastream.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/dimension.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/image.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/palette.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/point.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/rmagick.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/vector.rb
${GEM_LIB}/gems/${DISTNAME}/lib/chunky_png/version.rb
${GEM_LIB}/gems/${DISTNAME}/spec/
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/adam7_interlacing_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/data_url_exporting_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/data_url_importing_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/drawing_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/masking_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/operations_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/png_decoding_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/png_encoding_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/resampling_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/stream_exporting_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas/stream_importing_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/canvas_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/color_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/datastream_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/dimension_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/image_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/point_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/rmagick_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png/vector_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/chunky_png_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgai4a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgai4a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgan6a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgan6a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgbn4a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bggn4a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgwn6a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/background_chunks/bgyn6a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g01.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g02.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g04.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi0g16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi2c16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p01.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p02.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p04.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi3p08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi4a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi4a08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi4a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi4a16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi6a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi6a08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi6a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basi6a16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g01.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g02.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g04.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn0g16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn2c16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p01.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p02.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p04.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn3p08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn4a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn4a08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn4a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn4a16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn6a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn6a08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn6a16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/basic/basn6a16.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/broken/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/broken/x00n0g01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/broken/xcrn0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/broken/xlfn0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi1n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi1n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi2n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi2n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi4n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi4n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi9n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/chunk_ordering/oi9n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/compression_levels/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/compression_levels/z00n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/compression_levels/z03n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/compression_levels/z06n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/compression_levels/z09n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n0g08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n0g08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n2c08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f00n2c08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n0g08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n0g08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n2c08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f01n2c08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n0g08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n0g08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n2c08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f02n2c08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n0g08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n0g08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n2c08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f03n2c08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n0g08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n0g08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n0g08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n2c08.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n2c08_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/filtering/f04n2c08_reference.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g03n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g03n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g03n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g04n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g04n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g04n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g05n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g05n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g05n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g07n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g07n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g07n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g10n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g10n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g10n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g25n0g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g25n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/gamma/g25n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/metadata/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/metadata/cm0n0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/metadata/cm7n0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/metadata/cm9n0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ccwn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ccwn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cdfn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cdhn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cdsn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cdun2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ch1n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ch2n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs3n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs3n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs5n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs5n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs8n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/cs8n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ct0n0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ct1n0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ctzn0g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/pp0n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/pp0n6a08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ps1n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ps1n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ps2n0g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/other/ps2n2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s01i3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s01n3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s02i3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s02n3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s03i3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s03n3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s04i3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s04n3p01.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s05i3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s05n3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s06i3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s06n3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s07i3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s07n3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s08i3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s08n3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s09i3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s09n3p02.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s32i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s32n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s33i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s33n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s34i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s34n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s35i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s35n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s36i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s36n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s37i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s37n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s38i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s38n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s39i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s39n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s40i3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/sizes/s40n3p04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbbn1g04.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbbn2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbbn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbgn2c16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbgn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbrn2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbwn1g16.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbwn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tbyn3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tp0n1g08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tp0n2c08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tp0n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite/transparency/tp1n3p08.png
${GEM_LIB}/gems/${DISTNAME}/spec/png_suite_spec.rb
${GEM_LIB}/gems/${DISTNAME}/spec/resources/
${GEM_LIB}/gems/${DISTNAME}/spec/resources/adam7.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_five_point.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_four_point.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_four_point_flipped.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_four_point_s.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_six_point.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_three_point.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/bezier_three_point_flipped.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/circles.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_base.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_bl_xdown_ydown.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_bl_xdown_yup.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_bl_xup_yup.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_mask.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_mask_updated.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_nn_xdown_ydown.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_nn_xdown_yup.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_nn_xup_yup.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/clock_updated.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/composited.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/cropped.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/cropped_height.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/damaged_chunk.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/damaged_signature.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/empty.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/itxt_chunk.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/lines.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/operations.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/operations_border.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/operations_grayscale.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/partial_circles.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream.bgr
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream.rgb
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream.rgba
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream_best_compression.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream_fast_rgba.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/pixelstream_reference.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/polygon_filled_horizontal.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/polygon_filled_vertical.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/polygon_triangle_filled.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/polygon_unfilled.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/rect.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/replaced.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/text_chunk.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/trailing_bytes_after_iend_chunk.png
${GEM_LIB}/gems/${DISTNAME}/spec/resources/ztxt_chunk.png
${GEM_LIB}/gems/${DISTNAME}/spec/spec_helper.rb
${GEM_LIB}/gems/${DISTNAME}/tasks/
${GEM_LIB}/gems/${DISTNAME}/tasks/benchmarks.rake
${GEM_LIB}/specifications/${DISTNAME}.gemspec