Mergi
GO API uzlabotai attēlu manipulācijai
Open Source Go bibliotēka, lai programmatiski sapludinātu, apgrieztu attēlus un mainītu to izmērus. Varat pievienot ūdenszīmes un animāciju attēliem savās lietotnēs.
Mergi ir jaudīga go bibliotēka, kas nodrošina iespēju programmatiski apstrādāt attēlus, izmantojot GO valodu. Bibliotēka ir labi organizēta, un to var viegli integrēt, lai veiktu daudzas darbības, izmantojot tikai dažas Go koda rindas. Bibliotēka ir brīvi pieejama saskaņā ar MIT licenci, un to var viegli izmantot savos projektos.
Atvērtā pirmkoda Mergi bibliotēkā ir iekļauts pilnīgs atbalsts vairākām svarīgām attēlu apstrādes funkcijām, piemēram, attēlu sapludināšanai, attēlu apgriešanas atbalstam, attēlu izmēru maiņai, ūdenszīmju pievienošanai attēliem, attēlu animācijas iespējai, attēlu atvieglošanai, attēlu pārejas pievienošanai un daudz ko citu.
Darba sākšana ar Mergi
Vienkāršākais veids, kā instalēt Mergi, ir izmantot GitHub. Lūdzu, izmantojiet šo komandu vienmērīgai instalēšanai
Instalējiet Mergi, izmantojot GitHub.
$ go get github.com/noelyahan/mergi
Animējiet attēlus, izmantojot Go API
Atvērtā pirmkoda Mergi bibliotēka sniedz programmatūras izstrādātājiem iespēju animēt jebkuru attēlu masīva rezultātu savās GO lietojumprogrammās. Jums ir jānorāda pareizais attēla ceļš vai faila ceļa URL. Pēc tam attēli jānodod masīvam un jāpiemēro aizkave atbilstoši jūsu vajadzībām. Galu galā jūs varat eksportēt gala rezultātu, izmantojot animācijas eksportētāju, lai iegūtu iegūto GIF failu.
Kā animēt attēlus, izmantojot Go 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
}
Attēlu apgriešana, izmantojot Go API
Perfekts attēls var runāt vairāk nekā tūkstoš vārdu. Attēla apgriešana ir nevēlama attēla apgabala noņemšana, lai izveidotu fokusu vai nostiprinātu attēlu. Mergi bibliotēka ļauj programmatūras programmētājiem apgriezt attēlus savās Go lietojumprogrammās. Izstrādātājam ir jānodrošina vajadzīgā attēla un atrašanās vietas pielāgotais platums un augstums.
Apgriezt attēlu, izmantojot 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
}
Ūdenszīmju pievienošana attēliem
Bezmaksas Mergi bibliotēka sniedz programmatūras programmētājiem iespēju viegli programmatiski ievietot ūdenszīmes attēlos Go lietojumprogrammās. Izmantojot ūdenszīmju funkciju, mēs varam viegli aizsargāt mūsu attēlus no nesankcionētas kopiju izveides un izplatīšanas. Bibliotēka atbalsta logotipa, kā arī teksta ūdenszīmju ievietošanu, izmantojot pāris Go koda rindiņas. Ūdenszīmes var novietot jebkurā izvēlētā vietā pēc jūsu izvēles, kā arī ar jūsu izvēlētu necaurredzamību.
Pievienojiet attēlam ūdenszīmes, izmantojot 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"))
Attēlu sapludināšanas atbalsts
Mergi bibliotēka ļauj izstrādātājiem apvienot vairākus attēlus vienā attēlā atbilstoši savām vajadzībām, izmantojot Go programmēšanas komandas. Bibliotēka atbalsta vairāku attēlu apvienošanu atbilstoši dotajām veidnēm. Tā atbalsta horizontālās apvienošanas un vertikālās apvienošanas iespējas. Lai apvienotu divus attēlus, ir jānorāda attēla ceļš vai pareizs URL, un pēc tam varat atlasīt veidni, lai apvienotu attēlus horizontāli vai vertikāli.
Apvienojiet attēlus, izmantojot 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"))