A thumbnailing library for Go.

Written in Go

- Supports jpeg / png / gif / bmp / webp files (internally)
- Supports video files (requires `ffmpeg` in `$PATH`)
- Optional LRU cache of recent thumbnails for performance
- Sampling algorithms: Nearest-neighbour, Bilinear (fast), Bilinear (accurate), Bicubic (Catmull-Rom)
- Scaling algorithms: Fit inside, Fit outside, Stretch
- Output formats: JPG, PNG, Quantised/lossy PNG (via `go-imagequant`), BMP

A standalone binary `mkthumb` is provided as a sample utility.

This package can be installed via go get: `go get code.ivysaur.me/thumbnail`
[go-get]code.ivysaur.me/thumbnail git https://git.ivysaur.me/code.ivysaur.me/thumbnail.git[/go-get]

=CHANGELOG=

2018-06-09 1.0.0
- Feature: Major speed improvement
- Feature: Support FitInside, FitOutside, and Stretch stretching modes
- Feature: Support Bilnear (Fast), Bilnear (Accurate), and Bicubic (Catmull-Rom) scaling algorithms
- Feature: Support PNG output without imagequant; support BMP output
- Feature: Support Webp and BMP input files
- Fix wrong dimension output for video input files
- Fix jagged output of bilinear resizer

2018-06-04 0.2.1
- Add `disableimagecrush` build tag option to exclude cgo library dependency

2017-11-18 0.2.0
- Initial standalone release
- Feature: Decode input with specified mime type
- Feature: Allow passing zero as thumbnail cache size

2017-01-03 0.1.0
- Version of `thumbnail` vendored with `webdir` 1.0 (previously tagged as `release-1.0`)
