Documentation
¶
Overview ¶
Package cutter provides a function to crop image.
By default, the original image will be cropped at the given size from the top left corner.
croppedImg, err := cutter.Crop(img, cutter.Config{
Width: 250,
Height: 500,
})
Most of the time, the cropped image will share some memory with the original, so it should be used read only. You must ask explicitely for a copy if nedded.
croppedImg, err := cutter.Crop(img, cutter.Config{
Width: 250,
Height: 500,
Options: Copy,
})
It is possible to specify the top left position:
croppedImg, err := cutter.Crop(img, cutter.Config{
Width: 250,
Height: 500,
Anchor: image.Point{100, 100},
Mode: TopLeft, // optional, default value
})
The Anchor property can represents the center of the cropped image instead of the top left corner:
croppedImg, err := cutter.Crop(img, cutter.Config{
Width: 250,
Height: 500,
Mode: Centered,
})
The default crop use the specified dimension, but it is possible to use Width and Heigth as a ratio instead. In this case, the resulting image will be as big as possible to fit the asked ratio from the anchor position.
croppedImg, err := cutter.Crop(baseImage, cutter.Config{
Width: 4,
Height: 3,
Mode: Centered,
Options: Ratio,
})
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AnchorMode ¶
type AnchorMode int
AnchorMode is an enumeration of the position an anchor can represent.
const ( // TopLeft defines the Anchor Point // as the top left of the cropped picture. TopLeft AnchorMode = iota // Centered defines the Anchor Point // as the center of the cropped picture. Centered = iota )
type Config ¶
type Config struct {
Width, Height int
Anchor image.Point // The Anchor Point in the source image
Mode AnchorMode // Which point in the resulting image the Anchor Point is referring to
Options Option
}
Config is used to defined the way the crop should be realized.
type Option ¶
type Option int
Option flags to modify the way the crop is done.
const ( // Ratio flag is use when Width and Height // must be used to compute a ratio rather // than absolute size in pixels. Ratio Option = 1 << iota // Copy flag is used to enforce the function // to retrieve a copy of the selected pixels. // This disable the use of SubImage method // to compute the result. Copy = 1 << iota )