PPTX DOCX XLSX PDF ODP
Aspose.Imaging  .NET के लिए
JPEG

C# के माध्यम से JPEG को इधर-उधर करें

सर्वर-साइड API का उपयोग करके तड़पना JPEG फ़ाइलों के लिए अपने स्वयं के .NET ऐप्स बनाएं।

C# का उपयोग करके JPEG फ़ाइलों को कैसे डायर करें

सहज उपयोगकर्ता अनुभव सुनिश्चित करने के लिए वेब प्लेसमेंट के लिए छवियों को कुशलतापूर्वक अनुकूलित करना महत्वपूर्ण है। इस तरह के अनुकूलन के लिए एक दृष्टिकोण में छवि के रंग पैलेट को कम करना शामिल है, जिससे इसकी फ़ाइल का आकार कम हो जाता है और पृष्ठ लोड समय में सुधार होता है। हालाँकि, चिकने रंग ग्रेडिएंट के विघटन और मोनोक्रोमैटिक क्षेत्रों में तेज सीमाओं के उद्भव को रोकने के लिए, छवि-स्मूथिंग फ़ंक्शन को नियोजित करना आवश्यक है, जिसे डिथरिंग के रूप में जाना जाता है। यह तकनीक आपको किसी छवि या तस्वीर में नियंत्रित मात्रा में “शोर” लाने की अनुमति देती है, जो बदले में, रंग क्षेत्र के भीतर बदलाव को सुचारू करके और छवि की समग्र दृश्य अपील को बढ़ाकर सकारात्मक प्रभाव डालती है। JPEG फ़ाइलों को अलग करने के लिए, हम इसका उपयोग करेंगे Aspose.Imaging for .NET API जो एक सुविधा संपन्न, शक्तिशाली और उपयोग में आसान छवि हेरफेर और C# प्लेटफॉर्म के लिए रूपांतरण API है। NuGet पैकेज मैनेजर खोलें, खोजें Aspose.Imaging और इंस्टॉल करें। आप पैकेज मैनेजर कंसोल से निम्न कमांड का भी उपयोग कर सकते हैं।

पैकेज प्रबंधक कंसोल कमांड


PM> Install-Package Aspose.Imaging

C# के माध्यम से JPEG को इधर-उधर करने के चरण

आपको अपने परिवेश में निम्न वर्कफ़्लो आज़माने के लिए aspose.imaging.dll की आवश्यकता होगी।

  • लोड JPEG छवि के साथ फ़ाइलें। लोड विधि
  • दिथर छवियों;
  • Aspose द्वारा समर्थित डिस्क में संपीड़ित छवि को सहेजें। इमेजिंग प्रारूप

सिस्टम आवश्यकताएं

Aspose.Imaging for .NET सभी प्रमुख ऑपरेटिंग सिस्टम पर समर्थित है। बस सुनिश्चित करें कि आपके पास निम्नलिखित पूर्वापेक्षाएँ हैं।

  • माइक्रोसॉफ्ट विंडोज या .NET फ्रेमवर्क, .NET कोर, विंडोज एप्लीकेशन, एएसपी.नेट वेब एप्लीकेशन के साथ संगत ओएस।
  • माइक्रोसॉफ्ट विजुअल स्टूडियो जैसे विकास का माहौल।
  • Aspose.Imaging for .NET आपके प्रोजेक्ट में संदर्भित है।
 

या तो JPEG चित्र - .NET

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Bmp;
using Aspose.Imaging.FileFormats.Dicom;
using Aspose.Imaging.FileFormats.Emf;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.FileFormats.Jpeg2000;
using Aspose.Imaging.FileFormats.Png;
using Aspose.Imaging.FileFormats.Psd;
using Aspose.Imaging.FileFormats.Tiff.Enums;
using Aspose.Imaging.ImageFilters.FilterOptions;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Masking;
using Aspose.Imaging.Masking.Options;
using Aspose.Imaging.Masking.Result;
using Aspose.Imaging.Sources;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
string templatesFolder = @"c:\Users\USER\Downloads";
ThresholdDithering();
void FloydSteinbergDithering()
{
FilterImages(image =>
{
//https://apireference.aspose.com/imaging/net/aspose.imaging/ditheringmethod
image.Dither(DitheringMethod.FloydSteinbergDithering, 4);
}, "floydsteinbergdithering");
}
void ThresholdDithering()
{
FilterImages(image =>
{
//https://apireference.aspose.com/imaging/net/aspose.imaging/ditheringmethod
image.Dither(DitheringMethod.ThresholdDithering, 4);
}, "thresholddithering");
}
void FilterImages(Action<RasterImage> doFilter, string filterName)
{
List<string> rasterFormats = new List<string>() { "jpg", "png", "bmp", "apng", "dicom",
"jp2", "j2k", "tga", "webp", "tif", "gif", "ico" };
List<string> vectorFormats = new List<string>() { "svg", "otg", "odg", "eps", "wmf", "emf", "wmz", "emz", "cmx", "cdr" };
List<string> allFormats = new List<string>(rasterFormats);
allFormats.AddRange(vectorFormats);
allFormats.ForEach(
formatExt =>
{
var inputFile = Path.Combine(templatesFolder, $"template.{formatExt}");
bool isVectorFormat = vectorFormats.IndexOf(formatExt) > -1;
//Need to rasterize vector formats before background remove
if (isVectorFormat)
{
inputFile = RasterizeVectorImage(formatExt, inputFile);
}
var outputFile = Path.Combine(templatesFolder, $"{filterName}_{formatExt}.png");
Console.WriteLine($"Processing {formatExt}");
using (var image = (RasterImage)Image.Load(inputFile))
{
doFilter(image);
//If image is multipage save each page to png to demonstrate results
if (image is IMultipageImage multiPage && multiPage.PageCount > 1)
{
for (var pageIndex = 0; pageIndex < multiPage.PageCount; pageIndex++)
{
string fileName = $"{filterName}_page{pageIndex}_{formatExt}.png";
multiPage.Pages[pageIndex].Save(templatesFolder + fileName, new PngOptions());
File.Delete(templatesFolder + fileName);
}
}
else
{
image.Save(outputFile, new PngOptions());
File.Delete(outputFile);
}
}
//Remove rasterized vector image
if (isVectorFormat)
{
File.Delete(inputFile);
}
}
);
}
string RasterizeVectorImage(string formatExt, string inputFile)
{
string outputFile = Path.Combine(templatesFolder, $"rasterized.{formatExt}.png");
using (var image = Image.Load(inputFile))
{
image.Save(outputFile, new PngOptions());
}
return outputFile;
}
 
  • Aspose.Imaging for .NET API . के बारे में

    Aspose.Imaging API अनुप्रयोगों के भीतर छवियों (फ़ोटो) को बनाने, संशोधित करने, आकर्षित करने या परिवर्तित करने के लिए एक छवि प्रसंस्करण समाधान है। यह प्रदान करता है: क्रॉस-प्लेटफ़ॉर्म छवि प्रसंस्करण, जिसमें विभिन्न छवि प्रारूपों (समान बहु-पृष्ठ या बहु-फ़्रेम छवि प्रसंस्करण सहित) के बीच रूपांतरण शामिल हैं, लेकिन इन्हीं तक सीमित नहीं है, ड्राइंग जैसे संशोधन, ग्राफिक प्राइमेटिव के साथ काम करना, परिवर्तन (आकार बदलना, फसल करना, फ्लिप करना और घुमाना) , बिनाराइज़ेशन, ग्रेस्केल, एडजस्ट), उन्नत छवि हेरफेर सुविधाएँ (फ़िल्टरिंग, डिथरिंग, मास्किंग, डेस्क्यूइंग), और मेमोरी ऑप्टिमाइज़ेशन रणनीतियाँ। यह एक स्टैंडअलोन लाइब्रेरी है और इमेज ऑपरेशंस के लिए किसी सॉफ्टवेयर पर निर्भर नहीं है। परियोजनाओं के भीतर देशी एपीआई के साथ आसानी से उच्च-प्रदर्शन छवि रूपांतरण सुविधाएँ जोड़ सकते हैं। ये 100% निजी ऑन-प्रिमाइसेस एपीआई हैं और छवियों को आपके सर्वर पर संसाधित किया जाता है।

    या तो JPEGऑनलाइन ऐप के माध्यम से

    हमारी लाइव डेमो वेबसाइट पर जाकर JPEG दस्तावेज़ देखें। लाइव डेमो के निम्नलिखित लाभ हैं

      कुछ भी डाउनलोड या सेटअप करने की आवश्यकता नहीं है
      कोई कोड लिखने की जरूरत नहीं
      बस अपनी JPEG फ़ाइलें अपलोड करें और अब और करें बटन दबाएं
      परिणामी फ़ाइल के लिए तुरंत डाउनलोड लिंक प्राप्त करें

    JPEG क्या है JPEG फाइल का प्रारूप

    JPEG एक प्रकार का छवि प्रारूप है जिसे हानिपूर्ण संपीड़न की विधि का उपयोग करके सहेजा जाता है। संपीड़न के परिणामस्वरूप आउटपुट छवि, भंडारण आकार और छवि गुणवत्ता के बीच एक व्यापार-बंद है। उपयोगकर्ता वांछित गुणवत्ता स्तर प्राप्त करने के लिए संपीड़न स्तर को समायोजित कर सकते हैं जबकि साथ ही भंडारण आकार को कम कर सकते हैं। यदि छवि पर 10:1 संपीड़न लागू किया जाता है, तो छवि गुणवत्ता नगण्य रूप से प्रभावित होती है। संपीड़न मूल्य जितना अधिक होगा, छवि गुणवत्ता में गिरावट उतनी ही अधिक होगी।

    अधिक पढ़ें

    अन्य समर्थित दिथर प्रारूप

    C# का उपयोग करके, कोई भी व्यक्ति आसानी से विभिन्न प्रारूपों को शामिल कर सकता है।

    APNG (एनिमेटेड पोर्टेबल नेटवर्क ग्राफिक्स)
    BMP (बिटमैप चित्र)
    ICO (विंडोज आइकन)
    JPG (फ़ोटोग्राफ़ी संबंधी विशेषज्ञों का संयुक्त समूह)
    DIB (डिवाइस स्वतंत्र बिटमैप)
    DICOM (डिजिटल इमेजिंग और संचार)
    DJVU (ग्राफिक्स प्रारूप)
    DNG (डिजिटल कैमरा छवि)
    EMF (उन्नत मेटाफ़ाइल प्रारूप)
    EMZ (विंडोज कम्प्रेस्ड एन्हांस्ड मेटाफाइल)
    GIF (ग्राफिकल इंटरचेंज प्रारूप)
    JP2 (जेपीईजी 2000)
    J2K (तरंगिका संपीड़ित छवि)
    PNG (पोर्टेबल नेटवर्क ग्राफ़िक्स)
    TIFF (टैग की गई छवि प्रारूप)
    TIF (टैग की गई छवि प्रारूप)
    WEBP (रेखापुंज वेब छवि)
    WMF (माइक्रोसॉफ्ट विंडोज मेटाफाइल)
    WMZ (संपीड़ित विंडोज मीडिया प्लेयर त्वचा)
    TGA (टार्गा ग्राफिक)
    SVG (स्केलेबल वेक्टर ग्राफिक्स)
    EPS (एनकैप्सुलेटेड पोस्टस्क्रिप्ट भाषा)
    CDR (वेक्टर ड्राइंग छवि)
    CMX (कोरल एक्सचेंज इमेज)
    OTG (OpenDocument मानक)
    ODG (अपाचे ओपनऑफिस ड्रा प्रारूप)