Görüntü sıkıştırma, görüntülerin boyutunu küçültmenin popüler bir yoludur. Sırasıyla görüntüleri depolamak ve iletmek için gereken alanı ve zamanı en aza indirmenizi sağlar. Görüntüleri, görüntülerin kalitesi bozulmayacak şekilde sıkıştıran çeşitli sıkıştırma teknikleri mevcuttur. Buna uygun olarak, bu gönderi size PNG, JPEG ve TIFF görüntüleri C# kullanarak programlı olarak sıkıştırmanın bazı basit yollarını sunar.

C# Görüntü Sıkıştırma API’sı - Ücretsiz İndirme

Aspose.Imaging for .NET, popüler görüntü biçimlerini .NET uygulamalarınızdan değiştirmenize olanak tanıyan güçlü bir görüntü işleme API’sidir. Ayrıca API, PNG, JPEG ve TIFF dahil olmak üzere görüntülere farklı sıkıştırma türleri uygulamanıza olanak tanır. API’yi kullanmak için DLL’sini indirebilir veya NuGet kullanarak yükleyebilirsiniz.

Install-Package Aspose.Imaging

PNG Görüntülerini C# ile Sıkıştırın

PNG görüntüleri için, sıkıştırma seviyesini 0 ila 9 arasında ayarlayabilirsiniz; burada 9, maksimum sıkıştırma ve 0, saklama modudur. Aspose.Imaging for .NET kullanarak bir PNG görüntüsünü sıkıştırma adımları aşağıdadır.

Aşağıdaki kod örneği, C# kullanarak PNG resimlerinin nasıl sıkıştırılacağını gösterir.

// Belgeler dizininin yolu.
string dataDir = RunExamples.GetDataDir_PNG();
 
// Dosyadan (veya akıştan) bir resim yükleyin
using (Image image = Image.Load(dataDir + "aspose_logo.png"))
{
    // Olası CompressionLevel aralığı üzerinde döngü
   for (int i = 0; i <= 9; i++)
    {
        // Elde edilen her PNG için bir PngOptions örneği oluşturun, CompressionLevel'i Ayarlayın ve sonucu diske kaydedin
        PngOptions options = new PngOptions();
        options.CompressionLevel = i;
        image.Save(i + "_out.png", options);
    }
}

JPEG Görüntülerini C# ile Sıkıştırın

Aspose.Imaging for .NET, JPEG görüntüleri ile başa çıkmak için, JPEG görüntüleri için aşağıdaki sıkıştırma türlerini sunan JpegOptions sınıfını sağlar.

  • temel
  • ilerici
  • kayıpsız
  • JPEG’ler

Aşağıda, yukarıda belirtilen sıkıştırma türlerinden birini kullanarak JPEG görüntülerini sıkıştırma adımları yer almaktadır.

Aşağıdaki kod örneği, C# kullanarak bir JPEG görüntüsünün nasıl sıkıştırılacağını gösterir.

// Belgeler dizininin yolu.
string dataDir = RunExamples.GetDataDir_JPEG();
          
using (var original = Image.Load(dataDir+"ColorGif.gif"))
{
    var jpegOptions = new JpegOptions()
{
    ColorType = JpegCompressionColorMode.Grayscale,
    CompressionType = JpegCompressionMode.Progressive,
          
};
    original.Save("D:/temp/result.jpg", jpegOptions);
}

C# dilinde TIFF Görüntülerine Sıkıştırma Uygulayın

Aspose.Imaging for .NET, TIFF görüntüleri için LZW, Packbits, CCIT Fax 3 & 4 ve benzeri geniş yelpazede sıkıştırma türleri sağlar. Gereksinimlerinize göre uygun türü seçebilirsiniz. Bir TIFF görüntüsünü sıkıştırmak için gereken adımlar aşağıdadır.

Aşağıdaki kod örneği, C# kullanarak TIFF görüntülerinin nasıl sıkıştırılacağını gösterir.

// Belgeler dizininin yolu.
string dataDir = RunExamples.GetDataDir_ModifyingAndConvertingImages();

// Dosya yolu konumu veya akışı aracılığıyla bir görüntü yükleyin
Image image = Image.Load(dataDir + "SampleTiff.tiff");

// Ortaya çıkan görüntü için bir TiffOptions örneği oluşturun
TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);

// BitsPerSample, Compression, Photometric modu ve gri tonlama paletini ayarlayın
outputSettings.BitsPerSample = new ushort[] { 4 };
outputSettings.Compression = TiffCompressions.Lzw;
outputSettings.Photometric = TiffPhotometrics.Palette;
outputSettings.Palette = ColorPaletteHelper.Create4BitGrayscale(false);
image.Save(dataDir + "SampleTiff_out.tiff", outputSettings);

Çözüm

Bu gönderide, C# kullanarak PNG, JPEG ve TIFF görüntülerin nasıl sıkıştırılacağını öğrendiniz. JPEG ve TIFF görüntüleri için desteklenen çeşitli sıkıştırma teknikleri de listelenmiştir. Belgeleri kullanarak .NET görüntü işleme API’si hakkında daha fazlasını keşfedebilirsiniz.

Ayrıca bakınız

Bilgi: Aspose JPG - PPT veya PNG - PPT dönüştürücüyü kullanarak, basit görüntülerden PowerPoint sunumları oluşturabilirsiniz.