Documentation ¶
Index ¶
- Constants
- Variables
- func ClearCache()
- func IsTypeSupported(imageType ImageType) bool
- func PrintCache()
- func PrintObjectReport(label string)
- func ReadRuntimeStats(stats *RuntimeStats)
- func ReadVipsMemStats(stats *MemoryStats)
- func Shutdown()
- func ShutdownThread()
- func Startup(config *Config)
- type Align
- type Angle
- type Angle45
- type BandFormat
- type BlendMode
- type Coding
- type Color
- type Config
- type Direction
- type ExportParams
- type ExtendStrategy
- type ImageMetadata
- type ImageRef
- func (r *ImageRef) AddAlpha() error
- func (r *ImageRef) AutoRotate() error
- func (r *ImageRef) BandFormat() BandFormat
- func (r *ImageRef) BandJoin(images ...*ImageRef) error
- func (r *ImageRef) Bands() int
- func (r *ImageRef) Close()
- func (r *ImageRef) Coding() Coding
- func (r *ImageRef) ColorSpace() Interpretation
- func (r *ImageRef) Composite(overlay *ImageRef, mode BlendMode, x, y int) error
- func (r *ImageRef) Copy() (*ImageRef, error)
- func (r *ImageRef) Embed(left, top, width, height int, extend ExtendStrategy) error
- func (r *ImageRef) Export(params *ExportParams) ([]byte, *ImageMetadata, error)
- func (r *ImageRef) ExtractArea(left, top, width, height int) error
- func (r *ImageRef) ExtractBand(band int, num int) error
- func (r *ImageRef) Flatten(backgroundColor *Color) error
- func (r *ImageRef) Flip(direction Direction) error
- func (r *ImageRef) Format() ImageType
- func (r *ImageRef) GaussianBlur(sigma float64) error
- func (r *ImageRef) GetOrientation() int
- func (r *ImageRef) HasAlpha() bool
- func (r *ImageRef) HasICCProfile() bool
- func (r *ImageRef) HasIPTC() bool
- func (r *ImageRef) HasProfile() bool
- func (r *ImageRef) Height() int
- func (r *ImageRef) Interpretation() Interpretation
- func (r *ImageRef) Invert() error
- func (r *ImageRef) IsColorSpaceSupported() bool
- func (r *ImageRef) Label(labelParams *LabelParams) error
- func (r *ImageRef) Linear(a, b []float64) error
- func (r *ImageRef) Linear1(a, b float64) error
- func (r *ImageRef) Metadata() *ImageMetadata
- func (r *ImageRef) Modulate(brightness, saturation, hue float64) error
- func (r *ImageRef) ModulateHSV(brightness, saturation float64, hue int) error
- func (r *ImageRef) OffsetX() int
- func (r *ImageRef) OffsetY() int
- func (r *ImageRef) OptimizeICCProfile() error
- func (r *ImageRef) PremultiplyAlpha() error
- func (r *ImageRef) RemoveICCProfile() error
- func (r *ImageRef) RemoveMetadata() error
- func (r *ImageRef) RemoveOrientation() error
- func (r *ImageRef) ResX() float64
- func (r *ImageRef) ResY() float64
- func (r *ImageRef) Resize(scale float64, kernel Kernel) error
- func (r *ImageRef) ResizeWithVScale(hScale, vScale float64, kernel Kernel) error
- func (r *ImageRef) Rotate(angle Angle) error
- func (r *ImageRef) SetOrientation(orientation int) error
- func (r *ImageRef) Sharpen(sigma float64, x1 float64, m2 float64) error
- func (r *ImageRef) ToBytes() ([]byte, error)
- func (r *ImageRef) ToColorSpace(interpretation Interpretation) error
- func (r *ImageRef) UnpremultiplyAlpha() error
- func (r *ImageRef) Width() int
- func (r *ImageRef) Zoom(xFactor int, yFactor int) error
- type ImageType
- type Interpretation
- type Kernel
- type LabelParams
- type MemoryStats
- type PreMultiplicationState
- type RuntimeStats
- type Scalar
Constants ¶
const DefaultFont = "sans 10"
const MajorVersion = int(C.VIPS_MAJOR_VERSION)
noinspection GoUnusedConst
const MicroVersion = int(C.VIPS_MICRO_VERSION) // A.K.A patch version
noinspection GoUnusedConst
const MinorVersion = int(C.VIPS_MINOR_VERSION)
noinspection GoUnusedConst
const Version = string(C.VIPS_VERSION)
noinspection GoUnusedConst
Variables ¶
var ( // ErrUnsupportedImageFormat when image type is unsupported ErrUnsupportedImageFormat = errors.New("unsupported image format") )
var ImageTypes = map[ImageType]string{ ImageTypeGIF: "gif", ImageTypeJPEG: "jpeg", ImageTypeMagick: "magick", ImageTypePDF: "pdf", ImageTypePNG: "png", ImageTypeSVG: "svg", ImageTypeTIFF: "tiff", ImageTypeWEBP: "webp", ImageTypeHEIF: "heif", ImageTypeBMP: "bmp", }
Functions ¶
func IsTypeSupported ¶
func PrintObjectReport ¶
func PrintObjectReport(label string)
PrintObjectReport outputs all of the current internal objects in libvips
func ReadRuntimeStats ¶
func ReadRuntimeStats(stats *RuntimeStats)
func ReadVipsMemStats ¶
func ReadVipsMemStats(stats *MemoryStats)
func ShutdownThread ¶
func ShutdownThread()
ShutdownThread clears the cache for for the given thread
Types ¶
type Align ¶
type Align int
Align represents VIPS_ALIGN
const ( AlignLow Align = C.VIPS_ALIGN_LOW AlignCenter Align = C.VIPS_ALIGN_CENTRE AlignHigh Align = C.VIPS_ALIGN_HIGH )
Direction enum
type Angle ¶
type Angle int
Angle represents VIPS_ANGLE type
const ( Angle0 Angle = C.VIPS_ANGLE_D0 Angle90 Angle = C.VIPS_ANGLE_D90 Angle180 Angle = C.VIPS_ANGLE_D180 Angle270 Angle = C.VIPS_ANGLE_D270 )
Angle enum
type Angle45 ¶
type Angle45 int
Angle45 represents VIPS_ANGLE45 type
const ( Angle45_0 Angle45 = C.VIPS_ANGLE45_D0 Angle45_45 Angle45 = C.VIPS_ANGLE45_D45 Angle45_90 Angle45 = C.VIPS_ANGLE45_D90 Angle45_135 Angle45 = C.VIPS_ANGLE45_D135 Angle45_180 Angle45 = C.VIPS_ANGLE45_D180 Angle45_225 Angle45 = C.VIPS_ANGLE45_D225 Angle45_270 Angle45 = C.VIPS_ANGLE45_D270 Angle45_315 Angle45 = C.VIPS_ANGLE45_D315 )
Angle45 enum
type BandFormat ¶
type BandFormat int
BandFormat represents VIPS_FORMAT type
const ( BandFormatNotSet BandFormat = C.VIPS_FORMAT_NOTSET BandFormatUchar BandFormat = C.VIPS_FORMAT_UCHAR BandFormatChar BandFormat = C.VIPS_FORMAT_CHAR BandFormatUshort BandFormat = C.VIPS_FORMAT_USHORT BandFormatShort BandFormat = C.VIPS_FORMAT_SHORT BandFormatUint BandFormat = C.VIPS_FORMAT_UINT BandFormatInt BandFormat = C.VIPS_FORMAT_INT BandFormatFloat BandFormat = C.VIPS_FORMAT_FLOAT BandFormatComplex BandFormat = C.VIPS_FORMAT_COMPLEX BandFormatDouble BandFormat = C.VIPS_FORMAT_DOUBLE BandFormatDpComplex BandFormat = C.VIPS_FORMAT_DPCOMPLEX )
BandFormat enum
type BlendMode ¶
type BlendMode int
const ( BlendModeClear BlendMode = C.VIPS_BLEND_MODE_CLEAR BlendModeSource BlendMode = C.VIPS_BLEND_MODE_SOURCE BlendModeOver BlendMode = C.VIPS_BLEND_MODE_OVER BlendModeIn BlendMode = C.VIPS_BLEND_MODE_IN BlendModeOut BlendMode = C.VIPS_BLEND_MODE_OUT BlendModeAtop BlendMode = C.VIPS_BLEND_MODE_ATOP BlendModeDest BlendMode = C.VIPS_BLEND_MODE_DEST BlendModeDestOver BlendMode = C.VIPS_BLEND_MODE_DEST_OVER BlendModeDestIn BlendMode = C.VIPS_BLEND_MODE_DEST_IN BlendModeDestOut BlendMode = C.VIPS_BLEND_MODE_DEST_OUT BlendModeDestAtop BlendMode = C.VIPS_BLEND_MODE_DEST_ATOP BlendModeXOR BlendMode = C.VIPS_BLEND_MODE_XOR BlendModeAdd BlendMode = C.VIPS_BLEND_MODE_ADD BlendModeSaturate BlendMode = C.VIPS_BLEND_MODE_SATURATE BlendModeMultiply BlendMode = C.VIPS_BLEND_MODE_MULTIPLY BlendModeScreen BlendMode = C.VIPS_BLEND_MODE_SCREEN BlendModeOverlay BlendMode = C.VIPS_BLEND_MODE_OVERLAY BlendModeDarken BlendMode = C.VIPS_BLEND_MODE_DARKEN BlendModeLighten BlendMode = C.VIPS_BLEND_MODE_LIGHTEN BlendModeColorDodge BlendMode = C.VIPS_BLEND_MODE_COLOUR_DODGE BlendModeColorBurn BlendMode = C.VIPS_BLEND_MODE_COLOUR_BURN BlendModeHardLight BlendMode = C.VIPS_BLEND_MODE_HARD_LIGHT BlendModeSoftLight BlendMode = C.VIPS_BLEND_MODE_SOFT_LIGHT BlendModeDifference BlendMode = C.VIPS_BLEND_MODE_DIFFERENCE BlendModeExclusion BlendMode = C.VIPS_BLEND_MODE_EXCLUSION )
type Coding ¶
type Coding int
Coding represents VIPS_CODING type
const ( CodingError Coding = C.VIPS_CODING_ERROR CodingNone Coding = C.VIPS_CODING_NONE CodingLABQ Coding = C.VIPS_CODING_LABQ CodingRAD Coding = C.VIPS_CODING_RAD )
Coding enum
type Config ¶
type Config struct { ConcurrencyLevel int MaxCacheFiles int MaxCacheMem int MaxCacheSize int ReportLeaks bool CacheTrace bool CollectStats bool }
Config allows fine-tuning of libvips library
type Direction ¶
type Direction int
Direction represents VIPS_DIRECTION type
const ( DirectionHorizontal Direction = C.VIPS_DIRECTION_HORIZONTAL DirectionVertical Direction = C.VIPS_DIRECTION_VERTICAL )
Direction enum
type ExportParams ¶
type ExportParams struct { Format ImageType Quality int Compression int Interlaced bool Lossless bool Effort int }
ExportParams are options when exporting an image to file or buffer
func NewDefaultExportParams ¶
func NewDefaultExportParams() *ExportParams
func NewDefaultJPEGExportParams ¶
func NewDefaultJPEGExportParams() *ExportParams
func NewDefaultPNGExportParams ¶
func NewDefaultPNGExportParams() *ExportParams
func NewDefaultWEBPExportParams ¶
func NewDefaultWEBPExportParams() *ExportParams
type ExtendStrategy ¶
type ExtendStrategy int
ExtendStrategy represents VIPS_EXTEND type
const ( ExtendBlack ExtendStrategy = C.VIPS_EXTEND_BLACK ExtendCopy ExtendStrategy = C.VIPS_EXTEND_COPY ExtendRepeat ExtendStrategy = C.VIPS_EXTEND_REPEAT ExtendMirror ExtendStrategy = C.VIPS_EXTEND_MIRROR ExtendWhite ExtendStrategy = C.VIPS_EXTEND_WHITE ExtendBackground ExtendStrategy = C.VIPS_EXTEND_BACKGROUND )
ExtendStrategy enum
type ImageMetadata ¶
type ImageMetadata struct { Format ImageType Width int Height int Colorspace Interpretation Orientation int }
type ImageRef ¶
type ImageRef struct {
// contains filtered or unexported fields
}
ImageRef contains a libvips image and manages its lifecycle. You need to close an image when done or it will leak
func NewImageFromBuffer ¶
NewImageFromBuffer loads an image buffer and creates a new Image
func NewImageFromFile ¶
NewImageFromFile loads an image from file and creates a new ImageRef
func NewImageFromReader ¶
NewImageFromReader loads an ImageRef from the given reader
func (*ImageRef) AutoRotate ¶
func (*ImageRef) BandFormat ¶
func (r *ImageRef) BandFormat() BandFormat
BandFormat returns the current band format
func (*ImageRef) Close ¶
func (r *ImageRef) Close()
Close closes an image and frees internal memory associated with it
func (*ImageRef) ColorSpace ¶
func (r *ImageRef) ColorSpace() Interpretation
Alias to Interpretation()
func (*ImageRef) Embed ¶
func (r *ImageRef) Embed(left, top, width, height int, extend ExtendStrategy) error
Embed executes the 'embed' operation
func (*ImageRef) Export ¶
func (r *ImageRef) Export(params *ExportParams) ([]byte, *ImageMetadata, error)
Export exports the image
func (*ImageRef) ExtractArea ¶
ExtractArea executes the 'extract_area' operation
func (*ImageRef) ExtractBand ¶
ExtractBand executes the 'extract_band' operation
func (*ImageRef) GaussianBlur ¶
Gaussblur executes the 'gaussblur' operation
func (*ImageRef) GetOrientation ¶
Return the orientation number as appears in the EXIF, if present
func (*ImageRef) HasProfile ¶
HasProfile returns if the image has an ICC profile embedded.
func (*ImageRef) Interpretation ¶
func (r *ImageRef) Interpretation() Interpretation
Interpretation returns the current interpretation
func (*ImageRef) IsColorSpaceSupported ¶
func (*ImageRef) Label ¶
func (r *ImageRef) Label(labelParams *LabelParams) error
Label executes the 'label' operation
func (*ImageRef) Metadata ¶
func (r *ImageRef) Metadata() *ImageMetadata
func (*ImageRef) ModulateHSV ¶
Modulate the colors
func (*ImageRef) OptimizeICCProfile ¶
func (*ImageRef) PremultiplyAlpha ¶
func (*ImageRef) RemoveICCProfile ¶
func (*ImageRef) RemoveMetadata ¶
won't remove the ICC profile and orientation because we must have them to correctly display the image
func (*ImageRef) RemoveOrientation ¶
func (*ImageRef) ResizeWithVScale ¶
func (*ImageRef) SetOrientation ¶
func (*ImageRef) ToBytes ¶
ToBytes writes the image to memory in VIPs format and returns the raw bytes, useful for storage.
func (*ImageRef) ToColorSpace ¶
func (r *ImageRef) ToColorSpace(interpretation Interpretation) error
func (*ImageRef) UnpremultiplyAlpha ¶
type ImageType ¶
type ImageType int
ImageType represents an image type
const ( ImageTypeUnknown ImageType = C.UNKNOWN ImageTypeGIF ImageType = C.GIF ImageTypeJPEG ImageType = C.JPEG ImageTypeMagick ImageType = C.MAGICK ImageTypePDF ImageType = C.PDF ImageTypePNG ImageType = C.PNG ImageTypeSVG ImageType = C.SVG ImageTypeTIFF ImageType = C.TIFF ImageTypeWEBP ImageType = C.WEBP ImageTypeHEIF ImageType = C.HEIF ImageTypeBMP ImageType = C.BMP )
ImageType enum
func DetermineImageType ¶
DetermineImageType attempts to determine the image type of the given buffer
type Interpretation ¶
type Interpretation int
Interpretation represents VIPS_INTERPRETATION type
const ( InterpretationError Interpretation = C.VIPS_INTERPRETATION_ERROR InterpretationMultiband Interpretation = C.VIPS_INTERPRETATION_MULTIBAND InterpretationBW Interpretation = C.VIPS_INTERPRETATION_B_W InterpretationHistogram Interpretation = C.VIPS_INTERPRETATION_HISTOGRAM InterpretationXYZ Interpretation = C.VIPS_INTERPRETATION_XYZ InterpretationLAB Interpretation = C.VIPS_INTERPRETATION_LAB InterpretationCMYK Interpretation = C.VIPS_INTERPRETATION_CMYK InterpretationLABQ Interpretation = C.VIPS_INTERPRETATION_LABQ InterpretationRGB Interpretation = C.VIPS_INTERPRETATION_RGB InterpretationRGB16 Interpretation = C.VIPS_INTERPRETATION_RGB16 InterpretationCMC Interpretation = C.VIPS_INTERPRETATION_CMC InterpretationLCH Interpretation = C.VIPS_INTERPRETATION_LCH InterpretationLABS Interpretation = C.VIPS_INTERPRETATION_LABS InterpretationSRGB Interpretation = C.VIPS_INTERPRETATION_sRGB InterpretationYXY Interpretation = C.VIPS_INTERPRETATION_YXY InterpretationFourier Interpretation = C.VIPS_INTERPRETATION_FOURIER InterpretationGB16 Interpretation = C.VIPS_INTERPRETATION_RGB16 InterpretationGrey16 Interpretation = C.VIPS_INTERPRETATION_GREY16 InterpretationMatrix Interpretation = C.VIPS_INTERPRETATION_MATRIX InterpretationScRGB Interpretation = C.VIPS_INTERPRETATION_scRGB InterpretationHSV Interpretation = C.VIPS_INTERPRETATION_HSV )
Interpretation enum
type Kernel ¶
type Kernel int
Kernel represents VipsKernel type
const ( KernelAuto Kernel = -1 KernelNearest Kernel = C.VIPS_KERNEL_NEAREST KernelLinear Kernel = C.VIPS_KERNEL_LINEAR KernelCubic Kernel = C.VIPS_KERNEL_CUBIC KernelLanczos2 Kernel = C.VIPS_KERNEL_LANCZOS2 KernelLanczos3 Kernel = C.VIPS_KERNEL_LANCZOS3 KernelMitchell Kernel = C.VIPS_KERNEL_MITCHELL )
Kernel enum
type LabelParams ¶
type LabelParams struct { Text string Font string Width Scalar Height Scalar OffsetX Scalar OffsetY Scalar Opacity float32 Color Color Alignment Align }
LabelParams represents a text-based label
type PreMultiplicationState ¶
type PreMultiplicationState struct {
// contains filtered or unexported fields
}