![](https://products-qa.fileformat.com/fi/image/go/mergi/header-image.png)
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.
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"))