图像工具
ling-base common/imageutil 模块文档
在线 Playground
在浏览器中直接体验本页相关 API,无需本地安装 Go 环境。
imageutil
Image processing utilities supporting decode/encode, resize, crop, rotate, flip, filters, effects, watermark, composite, and histogram analysis.
Features
- Decode/Encode: JPEG, PNG, GIF, BMP, TIFF, WebP (decode only)
- Resize: nearest-neighbor, bilinear, CatmullRom, Lanczos, fit-with-padding
- Crop: rectangular, center, smart, aspect-ratio (9-grid anchor), circular, rounded corners
- Rotate 90/180/270, flip horizontal/vertical
- Adjust: brightness, contrast, gamma, saturation, hue, color temperature, tint
- Filters: box blur, gaussian blur, sharpen, edge detect (Sobel), emboss
- Effects: invert, sepia, posterize, threshold
- Watermark: image overlay (center/bottom-right/tiled) and text watermark
- Composite: blend modes, border, padding
- Info: dimensions, format detection, histogram and statistics
Key types
Format-- image format (FormatJPEG,FormatPNG,FormatGIF,FormatBMP,FormatTIFF,FormatWebP)
Key functions
DecodeFile(path),Decode(r),FromBytes(data)-- load imagesSaveJPEG,SavePNG,SaveByExtension-- write imagesResizeBilinear,ResizeLanczos,ResizeNearest,Thumbnail,FitCrop,CropCenter,CropSmart,CropToRatio,CircleCrop,RoundCornersRotate90,FlipH,FlipV,GrayscaleGaussianBlur,Sharpen,EdgeDetect,Invert,SepiaAddWatermark,AddTextWatermarkFormatFromExtension(ext),ImageInfo(img)
Quick start
import (
"image"
"github.com/LingByte/ling-base/common/imageutil"
)
img, _, err := imageutil.DecodeFile("input.png")
if err != nil {
log.Fatal(err)
}
resized := imageutil.ResizeLanczos(img, 200, 0) // width=200, auto height
rounded := imageutil.RoundCorners(resized, 24)
_ = imageutil.SaveJPEG(rounded, "output.jpg", 85)License
MIT