stumpy_jpeg
stumpy_jpeg
WORK IN PROGRESS
Read sequential and progressive JPEGs.
- Does not support arithmetic encoding.
Installation
- Add the dependency to your
shard.yml
:
dependencies:
stumpy_jpeg:
github: reiswindy/stumpy_jpeg
- Run
shards install
Interface
StumpyJPEG.read(file : String) : Canvas
reads a JPEG image from a fileStumpyJPEG.read(io : IO) : Canvas
reads a JPEG image from an IOStumpyJPEG::JPEG
holds image associated data during parsing
Usage
require "stumpy_jpeg"
canvas = StumpyJPEG.read("yamboli.jpg")
For progressive reading
require "stumpy_jpeg"
StumpyJPEG.read("yamboli.jpg") do |canvas|
r, g, b = canvas[0, 0].to_rgb8
puts "red=#{r}, green=#{g}, blue=#{b}"
end
To Do / Wishlist
- [ ] JFIF header parsing support
- [x] Downsampled image support
- [ ] Arithmetic encoding support
- [ ] Add more tests
Contributing
- Fork it (https://github.com/reiswindy/stumpy_jpeg/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- reiswindy - creator and maintainer