Mergi  

 
 

उन्नत छवि हेरफेर के लिए GO API

छवियों को प्रोग्रामेटिक रूप से मर्ज करने, क्रॉप करने और आकार बदलने के लिए ओपन सोर्स गो लाइब्रेरी। आप अपने स्वयं के ऐप्स के अंदर छवियों में वॉटरमार्क और एनिमेशन जोड़ सकते हैं।

Mergi एक शक्तिशाली गो लाइब्रेरी है जो GO भाषा का उपयोग करके छवियों को प्रोग्रामेटिक रूप से संसाधित करने की क्षमता प्रदान करती है। पुस्तकालय सुव्यवस्थित है और गो कोड की केवल कुछ पंक्तियों के साथ कई कार्यों को करने के लिए आसानी से एकीकृत किया जा सकता है। पुस्तकालय एमआईटी लाइसेंस के तहत स्वतंत्र रूप से उपलब्ध है और इसे आपकी परियोजनाओं के अंदर आसानी से उपयोग किया जा सकता है।

ओपन सोर्स मर्जी लाइब्रेरी में कई महत्वपूर्ण इमेज प्रोसेसिंग फीचर्स जैसे मर्जिंग इमेज, इमेज क्रॉपिंग सपोर्ट, इमेज का आकार बदलना, आपकी इमेज में वॉटरमार्क जोड़ना, इमेज एनिमेशन सुविधा, इमेजेज को आसान बनाना, इमेज में ट्रांजिशन जोड़ना, और बहुत कुछ के लिए पूर्ण समर्थन शामिल है।

Previous Next

Mergi . के साथ शुरुआत करना

मर्जी को स्थापित करने का सबसे आसान तरीका गिटहब के माध्यम से उपयोग करना है। सुचारू स्थापना के लिए कृपया निम्न कमांड का उपयोग करें

गिटहब के माध्यम से मर्जी स्थापित करें।

$ go get github.com/noelyahan/mergi 

गो एपीआई के माध्यम से छवियों को चेतन करें

ओपन सोर्स मर्जी लाइब्रेरी सॉफ्टवेयर डेवलपर्स को अपने स्वयं के GO एप्लिकेशन के अंदर किसी भी छवि सरणी परिणाम को चेतन करने की शक्ति देती है। आपको छवि का सही पथ या फ़ाइल पथ का URL प्रदान करने की आवश्यकता है। फिर आपको छवियों को एक सरणी में पास करने और अपनी आवश्यकता के अनुसार देरी लागू करने की आवश्यकता है। अंत में, आप परिणामी GIF फ़ाइल प्राप्त करने के लिए एक एनीमेशन निर्यातक के माध्यम से अंतिम परिणाम निर्यात कर सकते हैं।

कैसे एनिमेटेड छवियाँ 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
}

गो एपीआई के माध्यम से इमेज क्रॉपिंग

एक बेहतरीन तस्वीर हजार शब्द बोल सकती है। इमेज क्रॉपिंग एक फोकस बनाने या छवि को मजबूत करने के लिए किसी छवि के अवांछित क्षेत्र को हटाना है। मर्जी लाइब्रेरी सॉफ्टवेयर प्रोग्रामर्स को अपने स्वयं के गो एप्लिकेशन के अंदर अपनी छवियों को क्रॉप करने में सक्षम बनाती है। डेवलपर को आवश्यक छवि और स्थान की कस्टम चौड़ाई और ऊंचाई प्रदान करने की आवश्यकता है।

गो 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
}

छवियों के अलावा वॉटरमार्क

मुफ्त मर्जी लाइब्रेरी सॉफ्टवेयर प्रोग्रामर्स को उनके गो एप्लिकेशन के अंदर इमेज में प्रोग्रामेटिक रूप से वॉटरमार्क डालने की क्षमता देती है। वॉटरमार्किंग सुविधा का उपयोग करके हम अनधिकृत प्रतियों के निर्माण और वितरण से आसानी से सुरक्षित हमारी छवियों कर सकते हैं। पुस्तकालय गो कोड की कुछ पंक्तियों का उपयोग करके लोगो के साथ-साथ टेक्स्ट वॉटरमार्क रखने का समर्थन करता है। वॉटरमार्क को आपकी पसंद की किसी भी चयनित स्थिति के साथ-साथ आपकी पसंद की अस्पष्टता के साथ रखा जा सकता है।

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

छवि विलय समर्थन

मर्जी लाइब्रेरी डेवलपर्स को गो प्रोग्रामिंग कमांड का उपयोग करके उनकी जरूरतों के अनुसार कई छवियों को एक ही छवि में संयोजित करने की सुविधा प्रदान करती है। लाइब्रेरी दिए गए टेम्प्लेट के अनुसार कई छवियों को मर्ज करने का समर्थन करती है। यह क्षैतिज विलय और लंबवत विलय सुविधाओं का समर्थन करता है। दो छवियों को संयोजित करने के लिए आपको एक छवि पथ या सही URL प्रदान करने की आवश्यकता है और उसके बाद, आप छवियों को क्षैतिज या लंबवत रूप से मर्ज करने के लिए एक टेम्पलेट का चयन कर सकते हैं।

गो 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"))
 हिन्दी