C# kullanarak JPEG Görüntüsünü Kırpma ve Yeniden Boyutlandırma

JPEG veya JPG, görüntüleri ve fotoğrafları depolamak için en yaygın kullanılan görüntü formatlarından biridir. Bazı durumlarda çeşitli nedenlerden dolayı görselleri kırpmamız veya döndürmemiz gerekebilir. Bu yazıda C# kullanarak JPEG görsellerinin nasıl kırpılacağını ve yeniden boyutlandırılacağını öğreneceğiz.

Bu makalede aşağıdaki konular ele alınacaktır:

JPEG’i Kırpmak ve Yeniden Boyutlandırmak için C# Görüntüleme API’si

Görüntüleri kırpmak ve yeniden boyutlandırmak için Aspose.Imaging for .NET API’sini kullanacağız. Görüntüleri veya fotoğrafları programlı olarak oluşturmamızı, yüklememizi, değiştirmemizi, dönüştürmemizi ve sıkıştırmamızı sağlar. Lütfen API’nin DLL’siniindirinveya NuGet kullanarak yükleyin.

PM> Install-Package Aspose.Imaging

C# kullanarak JPEG Görüntülerini kırpma

Herhangi bir JPEG/JPG görüntüsünü her taraftan görüntünün merkezine doğru kolayca kırpabiliriz. Bu amaçla RasterImage sınıfı, görüntüyü belirtilen kaydırma değerleriyle kırpan Crop(Int32, Int32, Int32, Int32) yöntemini sağlar. Görüntünün sınırlarını kırpmak için sola, sağa, yukarı ve alt kaydırma değerlerini bağımsız değişken olarak alır. Aşağıda verilen adımları izleyerek, kaydırmaya göre kırpma yaklaşımını kullanarak görüntüleri kırpabiliriz:

  1. Öncelikle, RasterImage sınıfını kullanarak giriş JPG görüntüsünü yükleyin.
  2. Daha sonra, CacheData yöntemini kullanarak görüntüyü önbelleğe alın.
  3. Bundan sonra, kaydırma değerlerini argüman olarak kullanarak Crop() yöntemini çağırın.
  4. Son olarak, kırpılan görüntü dosyasını kaydetmek için çıktı dosyası yolunu bağımsız değişken olarak kullanarak Save() yöntemini çağırın.

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

// Bu kod örneği, kaydırmaya göre kırpma yaklaşımını kullanarak JPG görüntüsünün nasıl kırpılacağını gösterir.
// Mevcut bir görüntüyü RasterImage sınıfının bir örneğine yükleme
RasterImage rasterImage = (RasterImage)Image.Load(@"C:\Files\images\aspose_logo.jpg");

// Kırpmadan önce, daha iyi performans için görselin önbelleğe alınması gerekir
if (!rasterImage.IsCached)
{
    rasterImage.CacheData();
}

// Dört tarafın tümü için kaydırma değerlerini tanımlayın
int leftShift = 30;
int rightShift = 30;
int topShift = 30;
int bottomShift = 30;

// Kaydırma değerlerine bağlı olarak görsele kırpma uygulayın 
// Kırpma yöntemi, görüntü sınırlarını görüntünün merkezine doğru kaydırır
rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);

// Kırpılan resmi kaydedin
rasterImage.Save(@"C:\Files\images\cropped_out.jpg");
C# kullanarak JPEG Görüntülerini kırpma

C# kullanarak JPEG Görüntülerini kırpın.

C# kullanarak Görüntüleri Belirli Boyuta Kırpın

RasterImage sınıfı ayrıca bir görüntünün belirli bir alanını belirtilen boyuta kırpan aşırı yüklenmiş Crop(Rectangle) yöntemini de sağlar. Argüman olarak Rectangle sınıfının bir örneğini alır. Aşağıdaki adımları izleyerek görüntüleri belirli bir boyuta kırpabiliriz:

  1. Öncelikle, RasterImage sınıfını kullanarak giriş JPG görüntüsünü yükleyin.
  2. Daha sonra, CacheData yöntemini kullanarak görüntüyü önbelleğe alın.
  3. Ardından, Rectangle sınıfı nesnesini belirtilen konum ve boyutla başlatın.
  4. Bundan sonra, oluşturulan Rectangle nesnesini bağımsız değişken olarak kullanarak Crop() yöntemini çağırın.
  5. Son olarak, kırpılan görüntü dosyasını kaydetmek için çıktı dosyası yolunu bağımsız değişken olarak kullanarak Save() yöntemini çağırın .

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

// Bu kod örneği, Dikdörtgen yaklaşımını kullanarak JPG görüntüsünün nasıl kırpılacağını gösterir.
// Mevcut bir görüntüyü RasterImage sınıfının bir örneğine yükleme
RasterImage rasterImage = (RasterImage)Image.Load(@"C:\Files\images\aspose_logo.jpg");

// Kırpmadan önce, daha iyi performans için görselin önbelleğe alınması gerekir
if (!rasterImage.IsCached)
{
    rasterImage.CacheData();
}

// İstenilen boyutta Rectangle sınıfının bir örneğini oluşturun
Rectangle rectangle = new Rectangle(35, 35, 580, 240);

// Rectangle sınıfının nesnesinde kırpma işlemini gerçekleştirin
rasterImage.Crop(rectangle);

// Kırpılan resmi kaydedin
rasterImage.Save(@"C:\Files\images\CroppingByRectangle_out.jpg");
C# kullanarak Görüntüyü Belirli Boyutta Kırpın.

C# kullanarak Görüntüyü Belirli Boyuta Kırpın.

C#’ta JPEG Görüntülerini Yeniden Boyutlandırma

Image sınıfı, görüntüleri yeniden boyutlandırmak için Resize() yöntemini sağlar. Aşağıdaki adımları izleyerek JPEG görsellerini yeniden boyutlandırabiliriz:

  1. Öncelikle, Image sınıfını kullanarak giriş JPG görüntüsünü yükleyin.
  2. Ardından, gerekli genişlik ve yüksekliği bağımsız değişken olarak kullanarak Resize(int32, int32) yöntemini çağırın.
  3. Son olarak, yeniden boyutlandırılan görüntüyü kaydetmek için çıktı dosyası yolunu bağımsız değişken olarak kullanarak Save() yöntemini çağırın .

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

// Bu kod örneği, Dikdörtgen yaklaşımını kullanarak JPG görüntüsünün nasıl kırpılacağını gösterir.
// Mevcut bir resmi yükle
Image image = Image.Load(@"C:\Files\images\aspose_logo.jpg");

// Yeni genişlik ve yükseklik
image.Resize(300, 100);

// Yeniden boyutlandırılan resmi kaydedin
image.Save(@"C:\Files\images\SimpleResizing_out.jpg");
C#'ta JPEG Görüntülerini Yeniden Boyutlandırma

C#’ta JPEG Görüntülerini yeniden boyutlandırın.

C#’ta JPEG Görüntülerini Orantılı Olarak Yeniden Boyutlandırma

Sabit yükseklik ve genişlikte yeniden boyutlandırdığımızda uzamış görüntüler elde edebiliriz. Uzatılmış görselleri önlemek için orantılı yeniden boyutlandırmayı kullanabiliriz. Bu amaçla, Image sınıfı, ResizeWidthProportionally(Int32) ve ResizeHeightProportionally(Int32) yöntemlerini sağlar. Bir resmi genişlik ve yükseklikle orantılı olarak yeniden boyutlandırmak için lütfen aşağıdaki adımları izleyin.

  1. Öncelikle, Image sınıfını kullanarak giriş JPG görüntüsünü yükleyin.
  2. Ardından, bağımsız değişken olarak yeni genişlikle Image.ResizeWidthProportionally(Int32) yöntemini çağırın.
  3. Bundan sonra, bağımsız değişken olarak yeni yükseklikle Image.ResizeHeightProportionally(Int32) yöntemini çağırın.
  4. Son olarak, yeniden boyutlandırılan görüntüyü kaydetmek için çıktı dosyası yolunu bağımsız değişken olarak kullanarak Save() yöntemini çağırın .

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

// Bu kod örneği, Dikdörtgen yaklaşımını kullanarak JPG görüntüsünün nasıl kırpılacağını gösterir.
// Mevcut bir resmi yükle
Image image = Image.Load(@"C:\Files\images\sample.jpg");

// Genişlik
int newGenişlik = image.Genişlik / 2;
image.ResizeGenişlikProportionally(newGenişlik);

// Yükseklik
int newYükseklik = image.Yükseklik / 2;
image.ResizeYükseklikProportionally(newYükseklik);

// Kaydetme seçeneklerini tanımlayın
JpegOptions saveOptions = new JpegOptions();
saveOptions.Quality = 100;

// Resmi kaydet
image.Save(@"C:\Files\images\sample_out.jpg", saveOptions);

Ücretsiz Lisans Alın

Lütfen ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyin.

Çözüm

Bu makalede şunların nasıl yapılacağını öğrendik:

  • C#’ta JPEG görüntülerini kırpın;
  • bir görüntüyü belirli bir boyuta kırpın;
  • JPEG görüntülerini programlı olarak yeniden boyutlandırın;
  • JPEG görüntülerini orantılı olarak yeniden boyutlandırın.

Ayrıca, belgeleri kullanarak Aspose.Imaging for .NET API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir belirsizlik durumunda lütfen forum üzerinden bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız