1. Tuotteet
  2.   Kuva
  3.   GO
  4.   Mergi  

Mergi  

 
 

GO API for Advanced Image Manipulation

Open Source Go -kirjasto yhdistää, rajata ja muuttaa kuvien kokoa ohjelmallisesti. Voit lisätä vesileimoja ja animaatioita kuviin omissa sovelluksissasi.

Mergi on tehokas go-kirjasto, joka tarjoaa mahdollisuuden käsitellä kuvia ohjelmallisesti GO-kielellä. Kirjasto on hyvin organisoitu ja se voidaan helposti integroida suorittamaan lukuisia toimintoja vain parilla rivillä Go-koodia. Kirjasto on vapaasti käytettävissä MIT-lisenssillä ja sitä voi helposti käyttää projekteissanne.

Avoimen lähdekoodin Mergi-kirjasto sisältää täydellisen tuen useille tärkeille kuvankäsittelyominaisuuksille, kuten kuvien yhdistämiseen, kuvien rajaamiseen, kuvien koon muuttamiseen, vesileimojen lisäämiseen kuviin, kuvien animaatioon, kuvien helpotukseen, kuviin siirtymisen lisäämiseen ja moniin muihin.

Previous Next

Mergin käytön aloittaminen

Helpoin tapa asentaa Mergi on GitHubin kautta. Käytä seuraavaa komentoa sujuvaan asennukseen

Asenna Mergi GitHubin kautta.

$ go get github.com/noelyahan/mergi 

Animoi kuvia Go API:n kautta

Avoimen lähdekoodin Mergi-kirjasto antaa ohjelmistokehittäjille mahdollisuuden animoida mitä tahansa kuvataulukon tuloksia omissa GO-sovelluksissaan. Sinun on annettava kuvan oikea polku tai tiedostopolun URL-osoite. Sitten sinun on välitettävä kuvat taulukkoon ja käytettävä viivettä tarpeidesi mukaan. Lopulta voit viedä lopputuloksen animaatioviennin kautta saadaksesi tuloksena olevan GIF-tiedoston.

Kuvien animointi Go API:n kautta

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
}

Kuvan rajaus Go API:n kautta

Täydellinen kuva kertoo enemmän kuin tuhat sanaa. Kuvan rajaus tarkoittaa kuvan ei-toivotun alueen poistamista tarkennuksen luomiseksi tai kuvan vahvistamiseksi. Mergi-kirjaston avulla ohjelmoijat voivat rajata kuviaan omissa Go-sovelluksissaan. Kehittäjän on annettava vaaditun kuvan ja sijainnin mukautettu leveys ja korkeus.

Rajaa kuvaa Go API:n kautta

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
}

Vesileimojen lisäys kuviin

Ilmainen Mergi-kirjasto antaa ohjelmoijille mahdollisuuden lisätä ohjelmallisesti vesileimoja Go-sovellustensa kuviin helposti. Vesileimaominaisuuden avulla voimme helposti suojata kuvamme luvattomalta kopioiden luomiselta ja jakelulta. Kirjasto tukee logon ja tekstivesileimojen sijoittamista muutaman rivin Go-koodin avulla. Vesileimat voidaan sijoittaa mihin tahansa valitsemaasi paikkaan sekä valitsemasi peittävyyteen.

Lisää vesileimoja kuvaan Go API:n kautta

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"))

Kuvien yhdistämisen tuki

Mergi-kirjaston avulla kehittäjät voivat yhdistää useita kuvia yhdeksi kuvaksi tarpeidensa mukaan Go-ohjelmointikomennoilla. Kirjasto tukee useiden kuvien yhdistämistä annettujen mallien mukaan. Se tukee vaakasuoraa yhdistämistä ja pystysuoraa yhdistämistä. Kahden kuvan yhdistäminen edellyttää kuvan polun tai oikean URL-osoitteen antamista, minkä jälkeen voit valita mallin kuvien yhdistämiseksi vaaka- tai pystysuunnassa.

Yhdistä kuvat Go API:n kautta

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"))
 Suomen