diff --git a/README.md b/README.md index f7f4e1c..c4dc79a 100644 --- a/README.md +++ b/README.md @@ -156,6 +156,25 @@ if bimg.NewImage(newImage).Type() == "png" { } ``` +#### Force resize + +```go +buffer, err := bimg.Read("image.jpg") +if err != nil { + fmt.Fprintln(os.Stderr, err) +} + +newImage, err := bimg.NewImage(buffer).ForceResize(1000, 500) +if err != nil { + fmt.Fprintln(os.Stderr, err) +} + +size := bimg.Size(newImage) +if size.Width != 1000 || size.Height != 500 { + fmt.Fprintln(os.Stderr, "Incorrect image size") +} +``` + #### Custom options See [Options](https://godoc.org/github.com/h2non/bimg#Options) struct to discover all the available fields diff --git a/image.go b/image.go index c0ae94b..fa02dd3 100644 --- a/image.go +++ b/image.go @@ -14,6 +14,16 @@ func (i *Image) Resize(width, height int) ([]byte, error) { return i.Process(options) } +// Force resize with custom size (aspect ratio won't be maintained) +func (i *Image) ForceResize(width, height int) ([]byte, error) { + options := Options{ + Width: width, + Height: height, + Force: true, + } + return i.Process(options) +} + // Resize the image to fixed width and height with additional crop transformation func (i *Image) ResizeAndCrop(width, height int) ([]byte, error) { options := Options{