ओपन सोर्स इमेज रीसाइजिंग सर्वर जो तेज प्रोसेसिंग प्रदान करता है
Picfit Pure Go में विकसित एक इमेज रीसाइज़िंग सर्वर है जो इमेज प्रोसेसिंग के स्टोरेज हिस्से का ख्याल रखता है, भले ही स्टोरेज इंजन का इस्तेमाल किया गया हो।
छवि प्रसंस्करण, विशेष रूप से आकार बदलना एक लंबी प्रक्रिया हो सकती है यदि आपकी छवि विभिन्न इंजनों पर संग्रहीत है क्योंकि इसमें अवतारों के कोड को हटाने और जेनरेट की गई छवि को पुनः प्राप्त करने के लिए सिंक्रोनस कॉल से बचने में समय लग सकता है।
Picfit आपके स्टोरेज इंजन और HTTP कैश सिस्टम के बीच प्रॉक्सी के रूप में कार्य करके इन मुद्दों को हल करता है। जबकि यह डाउनलोड करने के लिए स्वतंत्र है, खुला स्रोत है और तेजी से प्रसंस्करण प्रदान करता है, यह एक ही छवि को दो बार उत्पन्न करने और बहुत अधिक स्थान लेने से भी बचाता है।
आप छवियों को Amazon S3, DigitalOcean S3, अपने फाइल सिस्टम और अन्य पर स्टोर कर सकते हैं।
Picfit के साथ शुरुआत करना
Picfit को इंस्टाल करने का सबसे आसान और अनुशंसित तरीका GitHub के माध्यम से है। एक आसान और सुचारू स्थापना के लिए कृपया निम्न कमांड का उपयोग करें।
GitHub के माध्यम से Picfit इंस्टॉल करें
git clone https://github.com/thoas/picfit.git
फ्री गो लाइब्रेरी के माध्यम से छवियों का आकार बदलें
ओपन सोर्स पिकफिट लाइब्रेरी सॉफ्टवेयर डेवलपर्स को गो कमांड का उपयोग करके अपने स्वयं के एप्लिकेशन के अंदर प्रोग्रामेटिक रूप से छवियों का आकार बदलने में सक्षम बनाती है। पिकफिट के मुख्य कार्यों में से एक आपकी पसंद की ऊंचाई और चौड़ाई के अनुसार छवियों का आकार बदलने की क्षमता है। बस w (वांछित छवि की चौड़ाई) और h (वांछित छवि की ऊंचाई) मान प्रदान करें।
फ्री गो लाइब्रेरी के माध्यम से छवि का आकार बदलें
func (e *GoImageEngine) Resize(img *imagefile.ImageFile, width int, height int, options *Options) ([]byte, error) {
if options.Format == imaging.GIF {
content, err := e.TransformGIF(img, width, height, options, imaging.Resize)
if err != nil {
return nil, err
}
return content, nil
}
image, err := e.Source(img)
if err != nil {
return nil, err
}
return e.resize(image, width, height, options)
}
थंबनेल जेनरेट करने के लिए फ्री गो लाइब्रेरी
आप इस फ़ंक्शन का उपयोग पुन: नमूना किए गए फ़िल्टर के साथ या तो ऊपर या नीचे एक नई छवि उत्पन्न करने के लिए कर सकते हैं, और इसे एक निर्दिष्ट ऊंचाई और चौड़ाई में क्रॉप कर सकते हैं। फिर से इस function में आपको w और h value प्रदान करनी है।
GO Apps के अंदर GIF थंबनेल कैसे बनाएं?
func (e *GoImageEngine) Thumbnail(img *imagefile.ImageFile, width int, height int, options *Options) ([]byte, error) {
if options.Format == imaging.GIF {
content, err := e.TransformGIF(img, width, height, options, imaging.Thumbnail)
if err != nil {
return nil, err
}
return content, nil
}
image, err := e.Source(img)
if err != nil {
return nil, err
}
return e.thumbnail(image, width, height, options)
}
गो एपीआई के माध्यम से प्रतिवर्ती छवि सूचना
कार्यों का आकार बदलने के अलावा, Picfit के पास फ़ाइल जानकारी प्राप्त करने के साथ-साथ भंडारण या अपलोडिंग कमांड जैसी कुछ महत्वपूर्ण कार्य भी हैं। परिणाम के रूप में गेट फ़ंक्शन के साथ आपको निम्नलिखित पैरामीटर मिलेंगे:
- फ़ाइल का नाम: जनरेट की गई फ़ाइल का नाम
- पथ: यह आपके संग्रहण इंजन पर आपकी जनरेट की गई फ़ाइल का पथ होगा
- URL: यदि base_url मौजूद है तो आपको अपनी जनरेट की गई फ़ाइल का पूरा URL प्राप्त होगा