govips

module
v0.0.0-...-fbe430b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 11, 2020 License: MIT

README

govips Build Status GoDoc Go Report Card License

A libvips library for Go

This package wraps the core functionality of libvips image processing library by exposing all image operations on first-class types in Go. Additionally, it exposes raw access to call operations directly, for forward compatibility.

How fast is libvips? See this: Speed and Memory Use

This library was inspired primarily based on the C++ wrapper in libvips.

The intent for this is to enable developers to build extremely fast image processors in Go, which is suited well for concurrent requests.

Libvips is generally 4-8x faster than other graphics processors such as GraphicsMagick and ImageMagick.

Supported image operations

This library supports all known operations available to libvips found here:

Requirements

  • libvips 8+ (8.5.8+ recommended for GIF, PDF, SVG support)
  • C compatible compiler such as gcc 4.6+ or clang 3.0+
  • Go 1.9+

Installation

go get -u github.com/perelin/govips/pkg/vips

Example usage

// Resize an image with padding
return vips.NewPipeline().
	LoadFile(inputFile).
	PadStrategy(vips.ExtendBlack).
	Resize(1200, 1200).
	OutputFile(outputFile)

Contributing

In short, feel free to file issues or send along pull requests. See this guide on contributing for more information.

Credits

Thank you to John Cupitt for maintaining libvips and providing feedback on vips.

License

MIT - David Byttow

Directories

Path Synopsis
cmd
pkg
vips
Package vips provides a library for transforming images that is built on lipvips.
Package vips provides a library for transforming images that is built on lipvips.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL