1. Produse
  2.   Imagine
  3.   GO
  4.   Mergi  

Mergi  

 
 

GO API pentru manipularea avansată a imaginii

Bibliotecă Open Source Go pentru a îmbina, decupa și redimensiona imaginile în mod programatic. Puteți adăuga filigrane și animații imaginilor din propriile aplicații.

Mergi este o bibliotecă go puternică care oferă capacitatea de a procesa imagini în mod programatic folosind limbajul GO. Biblioteca este bine organizată și poate fi integrată cu ușurință pentru a efectua numeroase operații cu doar câteva linii de cod Go. Biblioteca este disponibilă gratuit sub licența MIT și poate fi utilizată cu ușurință în cadrul proiectelor dvs.

Biblioteca Mergi open source a inclus suport complet pentru mai multe funcții importante de procesare a imaginilor, cum ar fi îmbinarea imaginilor, suport pentru decuparea imaginilor, redimensionarea imaginilor, adăugarea de filigrane la imaginile dvs., facilitate de animație a imaginilor, facilitarea imaginilor, adăugarea de tranziție la imagini și multe altele.

Previous Next

Noțiuni introductive cu Mergi

Cel mai simplu mod de a instala Mergi este prin GitHub. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme

Instalați Mergi prin GitHub.

$ go get github.com/noelyahan/mergi 

Animați imagini prin Go API

Biblioteca Mergi cu sursă deschisă oferă dezvoltatorilor de software puterea de a anima orice rezultat de matrice de imagini în cadrul propriilor aplicații GO. Trebuie să furnizați calea corectă a imaginii sau adresa URL a căii fișierului. Apoi trebuie să treceți imaginile într-o matrice și să aplicați întârziere în funcție de nevoile dvs. În cele din urmă, puteți exporta rezultatul final printr-un exportator de animație pentru a obține fișierul GIF rezultat.

Cum de a anima imagini prin API.

func Animate(imgs []image.Image, delay int) (gif.GIF, error) {
	for i, v := range imgs {
		if v == nil {
			msg := fmt.Sprintf("Mergi found a error image=[%v] on %d", v, i)
			return gif.GIF{}, errors.New(msg)
		}
	}
	delays := make([]int, 0)
	for i := 0; i < len(imgs); i++ {
		delays = append(delays, delay)
	}
	images := encodeImgPaletted(&imgs)
	return gif.GIF{
		Image: images,
		Delay: delays,
	}, nil
}

Decuparea imaginii prin Go API

O imagine perfectă poate spune câte o mie de cuvinte. Decuparea imaginii este eliminarea unei zone nedorite a unei imagini pentru a crea o focalizare sau pentru a consolida imaginea. Biblioteca Mergi permite programatorilor de software să-și decupeze imaginile în propriile aplicații Go. Dezvoltatorul trebuie să furnizeze lățimea și înălțimea personalizate ale imaginii și locației necesare.

Sursă foto: Go API

var errCrop = errors.New("Mergi found a error image on Crop")
var errCropBound = errors.New("Mergi expects more than 0 value for bounds")
func Animate(imgs []image.Image, delay int) (gif.GIF, error) {
	for i, v := range imgs {
		if v == nil {
			msg := fmt.Sprintf("Mergi found a error image=[%v] on %d", v, i)
			return gif.GIF{}, errors.New(msg)
		}
	}
	delays := make([]int, 0)
	for i := 0; i < len(imgs); i++ {
		delays = append(delays, delay)
	}
	images := encodeImgPaletted(&imgs)
	return gif.GIF{
		Image: images,
		Delay: delays,
	}, nil
}

Adăugarea filigranelor la imagini

Biblioteca Mergi gratuită oferă programatorilor de software capacitatea de a introduce cu ușurință filigrane în imagini în interiorul aplicațiilor Go. Folosind caracteristica Watermarking, putem proteja noastre imaginile cu ușurință de crearea și distribuirea de copii neautorizate. Biblioteca acceptă plasarea unui logo, precum și a filigranelor de text folosind câteva rânduri de cod Go. Filigranele pot fi plasate în orice poziție selectată la alegere, precum și cu opacitatea dorită.

Adăugați Watermark la imagine prin Go API

originalImage, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_1.png"))
watermarkImage, _ := mergi.Import(impexp.NewFileImporter("./testdata/glass-mergi_logo_watermark_90x40.jpg"))
res, _ := mergi.Watermark(watermarkImage, originalImage, image.Pt(250, 10))
mergi.Export(impexp.NewFileExporter(res, "watermark.png"))

Suport pentru îmbinarea imaginilor

Biblioteca Mergi facilitează dezvoltatorilor să combine mai multe imagini într-o singură imagine în funcție de nevoile lor folosind comenzile de programare Go. Biblioteca acceptă îmbinarea mai multor imagini în funcție de șabloane date. Acceptă facilități de fuziune orizontală și de îmbinare verticală. Pentru a combina două imagini, trebuie să furnizați o cale a imaginii sau o adresă URL corectă și, după aceea, puteți selecta un șablon pentru a îmbina imaginile pe orizontală sau pe verticală.

Sursă foto: go API

image1, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_1.png"))
image2, _ := mergi.Import(impexp.NewFileImporter("./testdata/mergi_bg_2.png"))
horizontalImage, _ := mergi.Merge("TT", []image.Image{image1, image2})
mergi.Export(impexp.NewFileExporter(horizontalImage, "horizontal.png"))
verticalImage, _ := mergi.Merge("TB", []image.Image{image1, image2})
mergi.Export(impexp.NewFileExporter(verticalImage, "vertical.png"))
 Română