Çeşitli senaryolarda, dosya boyutlarını küçültmek için resimler sıkıştırılır. Bunun için farklı çevrimiçi veya çevrimdışı uygulamalar, görüntü sıkıştırma uygulamanıza olanak tanır. Ancak bazı durumlarda, görüntü sıkıştırma özelliğini web veya masaüstü uygulamalarınızdan uygulamanız gerekebilir. Bu tür durumlarda, bu makale PNG, JPEG ve TIFF dahil görüntülerin Java kullanılarak programlı olarak nasıl sıkıştırılacağını ele almaktadır.
- Java Görüntü Sıkıştırma API’sı
- Java’da PNG Görüntülerini Sıkıştırın
- Java’da JPEG Görüntülerini Sıkıştırın
- Java’da TIFF Görüntülerine Sıkıştırma Uygulayın
- Ücretsiz API Lisansı Alın
En İyi Java Görüntü Sıkıştırma API’sı - Ücretsiz İndirme
Aspose.Imaging for Java, Java uygulamalarının içinden çeşitli görüntü işleme işlemlerini gerçekleştirmenize izin veren güçlü bir API’dir. Ayrıca PNG, JPEG ve TIFF görüntülerini sorunsuz bir şekilde sıkıştırmanıza olanak tanır. API’yi kullanmak için JAR’ını indirebilir veya Maven tabanlı uygulamalarınıza yükleyebilirsiniz.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>20.12</version>
<classifier>jdk16</classifier>
</dependency>
Java’da PNG Görüntülerini Sıkıştırın
PNG formatı kayıpsız bir sıkıştırmayı destekler, yani bir PNG görüntüsünü sıkıştırmak dosya boyutunu düşürür ancak kalitesini düşürmez. PNG görüntüleri için Aspose.Imaging for Java, sıkıştırma seviyelerini 0 ile 9 arasında ayarlamanıza izin verir; burada 0 ve 9, sırasıyla minimum ve maksimum sıkıştırma seviyeleridir. Aşağıda, Java kullanarak bir PNG görüntüsünü sıkıştırma adımları yer almaktadır.
- İlk olarak, Image sınıfını kullanarak PNG görüntüsünü yükleyin.
- PngOptions sınıfının bir örneğini oluşturun.
- PngOptions.setCompressionLevel(int) yöntemini kullanarak sıkıştırma düzeyini ayarlayın.
- Son olarak sıkıştırılmış PNG görüntüsünü Image.save(String, PngOptions) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, Java kullanarak bir PNG görüntüsünün nasıl sıkıştırılacağını gösterir.
// Dosyadan (veya akıştan) bir resim yükleyin
Image image = Image.load("aspose_logo.png");
// Olası sıkıştırma seviyesi aralığında döngü
for (int i = 0; i <= 9; i++) {
// Ortaya çıkan her PNG için bir PngOptions örneği oluşturun
PngOptions options = new PngOptions();
// Sıkıştırma seviyesini ayarla
options.setCompressionLevel(i);
// Sonucu diske (veya akışa) kaydet
image.save("CompressingFiles_out" + i + ".png", options);
}
Java kullanarak JPEG Görüntü Sıkıştırma
Aspose.Imaging for Java, JPEG görüntü sıkıştırma için aşağıdaki sıkıştırma türlerini sağlar.
- temel
- ilerici
- kayıpsız
- JPEG’ler
Aşağıda, yukarıda belirtilen sıkıştırma türlerinden birini Java kullanarak JPEG görüntülere uygulama adımları yer almaktadır.
- İlk olarak, Image sınıfını kullanarak JPEG görüntüsünü yükleyin.
- JpegOptions sınıfının bir örneğini oluşturun.
- JpegOptions.setCompressionType(JpegCompressionMode) yöntemini kullanarak sıkıştırma düzeyini ayarlayın.
- Son olarak sıkıştırılmış JPEG görüntüsünü Image.save(String, JpegOptions) yöntemini kullanarak kaydedin.
Aşağıdaki kod örneği, Java kullanarak JPEG resimlerinin nasıl sıkıştırılacağını gösterir.
// Resmi yükle
Image original = Image.load("Input.jpeg");
try
{
JpegOptions jpegOptions = new JpegOptions()
{{
// Sıkıştırma uygula
setCompressionType(JpegCompressionMode.Progressive);
}};
// Sıkıştırılmış görüntüyü kaydet
original.save("result.jpg", jpegOptions);
}
finally
{
original.dispose();
}
TIFF Görüntülerini Java kullanarak sıkıştırın
Aspose.Imaging for Java, LZW, Packbits, CCIT Fax 3 & 4 ve benzerlerini içeren çeşitli TIFF sıkıştırma türleri sağlar. Bu nedenle, gereksinimlerinize en uygun sıkıştırma türünü seçebilirsiniz. Java kullanarak TIFF sıkıştırması gerçekleştirme adımları aşağıdadır.
- İlk olarak, Image sınıfını kullanarak TIFF görüntüsünü yükleyin.
- TiffOptions sınıfının bir örneğini oluşturun.
- TiffOptions.setCompression(TiffCompressions) yöntemini kullanarak sıkıştırma düzeyini ayarlayın.
- Numune başına bit sayısı, fotometrik, palet vb. gibi diğer seçenekleri ayarlayın.
- Son olarak, Image.save(String, TiffOptions) yöntemini kullanarak sıkıştırılmış TIFF görüntüsünü kaydedin.
Aşağıdaki kod örneği, Java kullanarak TIFF görüntülerinin nasıl sıkıştırılacağını gösterir.
// Dosya yolu konumu veya akışı aracılığıyla bir görüntü yükleyin
try (Image image = Image.load("sample.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.setBitsPerSample(new int[] { 4 });
outputSettings.setCompression(TiffCompressions.Lzw);
outputSettings.setPhotometric(TiffPhotometrics.Palette);
outputSettings.setPalette(ColorPaletteHelper.create4BitGrayscale(false));
image.save("SampleTiff_out.tiff", outputSettings);
}
Görüntüleri Sıkıştırmak için Java API - Ücretsiz Lisans Alın
API’yi değerlendirme sınırlamaları olmadan denemek isterseniz, ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Görüntülerin boyutunu küçültmek için genellikle görüntü sıkıştırma gerekir. Bu nedenle, bu makale PNG, JPEG ve TIFF görüntülerinin Java kullanılarak programlı olarak nasıl sıkıştırılacağını ele aldı. Ayrıca, belgeleme kullanarak Java görüntü işleme API’si hakkında daha fazlasını keşfedebilirsiniz.
Ayrıca bakınız
Bilgi: Aspose yakın zamanda bir dizi görüntüyü videoya dönüştürmenize olanak tanıyan yeni bir çevrimiçi web uygulaması geliştirdi. Videolardan sesleri çıkararak videoları sıkıştırmak için kullanılabilecek başka bir hizmetle de ilgilenebilirsiniz.