buildbuildsuccesssuccess  written inwritten inGoGo   vcsvcsgitgit

A thumbnailing library for 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


2018-12-31 1.0.1
• Convert to Go Modules
• Update vendored dependencies

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)


For bug reports, feature requests, or if you need any help, please click here to email me.