Nyílt forráskódú, magas szintű képfeldolgozás Go könyvtár
Go API, amely lehetővé teszi a képek elforgatását, a képek illeszkedését, miniatűrök létrehozását, a kép nagyítását, kép beágyazását vagy kiterjesztését, elmosódási effektusok hozzáadását a képhez és még sok mást.
A bimg egy nyílt forráskódú, magas szintű képfeldolgozó Go-könyvtár, amely képes képeket olvasni és manipulálni néhány sornyi Go kóddal. A könyvtár kisebb méretű, de nagyon jól szervezett és hatékony eredményeket produkál. A könyvtár nagyon gyors más elérhető könyvtárakhoz képest, amelyek nagyon kis memóriát igényelnek a feladat elvégzéséhez.
A bimg egy magas szintű C könyvtár, amely a libvips tetejére épült, amely egy nagyon hatékony könyvtár a képek feldolgozásához. Támogatja néhány nagyon népszerű képfájl-formátum olvasását, mint például JPEG, PNG, WEBP, TIFF, PDF, GIF, SVG stb. Könnyedén exportálhat képeket JPEG, PNG, WEBP formátumokba, valamint átlátszó képekké.
A bimg könyvtár számos fontos képfeldolgozási funkció támogatását tartalmazza, mint például a képek átméretezése, a kép nagyítása, a képkivágás, beleértve az intelligens kivágás támogatását, a képek átfordítását vagy elforgatását, képbélyegképek létrehozását, képnagyítási támogatást, vízjel és Gauss-elmosódási effektus hozzáadását, egyedi kivonatokat. terület képből, képek vágása, kép konvertálása más formátumokba és még sok más.
Ismerkedés a bimg-vel
A bimg telepítésének legegyszerűbb és ajánlott módja a GitHubon keresztül.
Telepítse a bimg-et a GitHubon keresztül
go get -u gopkg.in/h2non/bimg.v1
Képkonverzió más formátumokba a Go segítségével
A nyílt forráskódú bimg könyvtár lehetővé teszi a szoftverfejlesztők számára, hogy programozottan konvertálják a képeket más támogatott fájlformátumokba, mindössze néhány sornyi Go kóddal. Tegyük fel, hogy van egy JPEG formátumú, és szeretné konvertálni PNG formátumba. Meg kell adnia a képre vonatkozó információkat, például a kép nevét, címét és a konverziós formátumot. A kép könnyedén konvertálódik a javasolt formátumba.
átalakítsa JPG kép NG keresztül Go Library
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Convert(bimg.PNG)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
if bimg.NewImage(newImage).Type() == "png" {
fmt.Fprintln(os.Stderr, "The image was converted into png")
}
Képek kivágása vagy átméretezése
Az ingyenes bimg könyvtár lehetővé teszi a szoftverfejlesztők számára, hogy átméretezzék és levágják képeiket saját Go-alkalmazásaikon belül. Meg kell adnia az új kép szélességét és magasságát és helyét is. Támogatja az átméretezési műveletek kényszerítését is a képarány megőrzése nélkül. Szöveget is hozzáadhat, és kivonhatja a kívánt területet a képből. A Vágás a képet a megadott pontos méretre vágja.
Resize Image keresztül Go könyvtár
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Resize(800, 600)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
size, err := bimg.NewImage(newImage).Size()
if size.Width == 800 && size.Height == 600 {
fmt.Println("The image size is valid")
}
bimg.Write("new.jpg", newImage)
Vízjelek hozzáadása a képekhez
A bimg API olyan funkciókat is tartalmaz, amelyek segítségével könnyedén hozzáadhat vízjeleket a képekhez a Go alkalmazásokon belül. A vízjel hozzáadása nagyon hasznos funkció a képek védelmében. A vízjel a legegyszerűbb és nagyon hasznos módja az interneten lévő fényképek védelmének. Könnyen elhelyezhet logót vagy szöveges vízjelet. A könyvtár segít programozottan vízjelet adni a képhez bármely kiválasztott pozícióban, valamint az átlátszatlanságban.
Vízjel a képhez Go API
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
watermark := bimg.Watermark{
Text: "Chuck Norris (c) 2315",
Opacity: 0.25,
Width: 200,
DPI: 100,
Margin: 150,
Font: "sans bold 12",
Background: bimg.Color{255, 255, 255},
}
newImage, err := bimg.NewImage(buffer).Watermark(watermark)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
bimg.Write("new.jpg", newImage)
Képek megfordítása és elforgatása
A nyílt forráskódú bimg könyvtár lehetővé teszi a szoftverfejlesztők számára, hogy a Go nyelvi parancsok segítségével igényeik szerint elforgatják képeiket. Létezik egy módszer az automatikus képforgatásra. Az AutoRotate funkció automatikusan elforgatja a képet további átalakítások nélkül az EXIF tájolási metaadatok alapján, ha rendelkezésre állnak. Ezenkívül támogatja a flip vagy flop képeket, a képértelmezést, a kép hosszát, a kép metaadatait és még sok mást.
Rotate Image belül Go Apps
buffer, err := bimg.Read("image.jpg")
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
newImage, err := bimg.NewImage(buffer).Rotate(90)
if err != nil {
fmt.Fprintln(os.Stderr, err)
}
bimg.Write("new.jpg", newImage)