ImageSharp  

 
 

2डी ग्राफिक्स के लिए ओपन सोर्स सी#.नेट लाइब्रेरी

.NET API का उपयोग करके पीएनजी, जेपीईजी, जीआईएफ और टीआईएफएफ छवियों को पढ़ें, लिखें, संशोधित करें, आकार बदलें और कनवर्ट करें।

ImageSharp C# अनुप्रयोगों के अंदर छवि फ़ाइलों के प्रसंस्करण के लिए एक सरल लेकिन बहुत शक्तिशाली क्रॉस-प्लेटफ़ॉर्म ओपन सोर्स लाइब्रेरी है। यह पूरी तरह से प्रबंधित और क्रॉस-प्लेटफ़ॉर्म 2D ग्राफ़िक्स API है जिसे छवियों के प्रसंस्करण की अनुमति देने के लिए डिज़ाइन किया गया है। ImageSharp एक ओपन सोर्स इमेज प्रोसेसिंग लाइब्रेरी है जिसे System.Drawing API का विकल्प प्रदान करने के लक्ष्य के साथ जारी किया गया था।

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

Previous Next

ImageSharp के साथ शुरुआत करना

एक स्थिर रिलीज़ NuGet पर उपलब्ध है बीटा संस्करणों के लिए, सुनिश्चित करें कि प्रीरिलीज़ शामिल करें स्विच सक्षम है। विकास विज्ञप्ति MyGet के माध्यम से उपलब्ध हैं।

NuGet के माध्यम से ImageSharp स्थापित करें

Install-Package SixLabors.ImageSharp -Version number 

छवियों का आकार बदलने के लिए सी # एपीआई

ImageSharp लाइब्रेरी C# .NET प्रोग्रामर को अपने .NET अनुप्रयोगों के अंदर छवियों का आकार बदलने की अनुमति देती है। एक छवि का आकार बदलने के लिए एक लक्ष्य छवि के पिक्सेल के माध्यम से उत्पन्न करने और पुनरावृत्त करने की प्रक्रिया की आवश्यकता होती है और प्रत्येक पिक्सेल के लिए कौन सा रंग लागू करना है यह चुनने के लिए स्रोत छवि के नमूने क्षेत्रों की आवश्यकता होती है। छवियों को संसाधित करते समय आप आसानी से एल्गोरिथम सेट कर सकते हैं, जैसे कि बाइक्यूबिक, हरमाइट, बॉक्स, कैटमुलरोम, लैंज़ोस 2, और बहुत कुछ। मूल आकार बदलने के संचालन के अलावा, ImageSharp अधिक उन्नत सुविधाएँ भी प्रदान करता है।

सी # एपीआई के माध्यम से छवियों का आकार बदलें

// Load File 
using (Image image = Image.Load("fileformat.jpg"))
{
  // Resize file 
  image.Mutate(x => x
      .Resize(image.Width / 2, image.Height / 2)
      .greyscale());
  // Save
  image.Save("fileformat_out.jpg");
}                
                  

छवि पर वॉटरमार्क बनाएं

आम तौर पर, लोग बिना प्राधिकरण के छवियों का उपयोग करने से रोकने के लिए एक बड़े वॉटरमार्क को ओवरले करके अपनी छवियों की रक्षा करते हैं। ImageSharp लाइब्रेरी C++ एप्लिकेशन के अंदर छवियों में वॉटरमार्क जोड़ने के लिए समर्थन प्रदान करती है। शुरू करने के लिए आपको एक फॉन्ट फैमिली की जरूरत है और आप इसे सिस्टम फॉन्ट स्टोर से आसानी से प्राप्त कर सकते हैं। इमेज पर टेक्स्ट बनाएं और इसे 50% अपारदर्शिता के साथ ग्रे करें।

पथ के साथ टेक्स्ट बनाएं और छवि पर प्रभाव लागू करें

ImageSharp पुस्तकालय C# .NET डेवलपर्स को पथ की रूपरेखा का अनुसरण करते हुए कुछ पाठ बनाने की अनुमति देता है। फ़ॉन्ट संग्रह बनाने की अनुशंसा की जाती है। सबसे पहले, पाठ को पथ के साथ खींचे गए वैक्टर के एक सेट के रूप में उत्पन्न करते हैं। पथ को आरेखित करने के बाद हम देख सकते हैं कि पाठ का अनुसरण किस प्रकार किया जाना चाहिए। ImageSharp API केवल आकार के अंदर छवियों पर विभिन्न प्रकार के प्रभाव लागू करने की अनुमति देता है।

छवियों पर प्रभाव लागू करें


namespace CustomImageProcessor
{
    static class Program
    {
        static void Main(string[] args)
        {
            System.IO.Directory.CreateDirectory("output");
            using (Image image = Image.Load("fb.jpg"))
            {
                var outerRadii = Math.Min(image.Width, image.Height) / 2;
                var star = new Star(new PointF(image.Width / 2, image.Height / 2), 5, outerRadii / 2, outerRadii);
                using (var clone = image.Clone(p =>
                {
                    p.GaussianBlur(15); // apply the effect here you and inside the shape
                }))
                {
                    clone.Mutate(x => x.Crop((Rectangle)star.Bounds));
                    var brush = new ImageBrush(clone);
                    // cloned image with the effects applied
                    image.Mutate(c => c.Fill(brush, star));
                }
                image.Save("output/fb.png");
            }
        }
    }
}              
 हिन्दी