jpg'den webp'ye

Java’da jpg’yi webp’ye dönüştürme

Bu kılavuzda, JPG, PNG, JPEG ve GIF resim biçimlerini WebP‘ye dönüştürmek için Java’yı nasıl kullanacağınızı göstereceğiz. İşlem basit ve basittir ve mevcut Java uygulamanıza kolayca entegre edilebilir. İster tek bir görüntüyü dönüştürmeniz, ister birden çok görüntüyü toplu olarak işlemeniz gereksin, kılavuzumuz JPG’yi WebP’ye, PNG’yi WebP’ye, JPEG’i WebP’ye ve GIF’i WebP’ye dönüştürmeyi kolaylaştırır.

JPEG görüntülerin oldukça sıkıştırılabilir, oldukça taşınabilir ve neredeyse tüm cihazlarla uyumlu olduğunu biliyoruz. Ayrıca, yüksek çözünürlüklü JPEG görüntüler canlı ve renklidir. Benzer şekilde, PNG’deki sıkıştırma kayıpsızdır ve ayrıntılı, yüksek kontrastlı görüntüler için iyidir. Bununla birlikte, WebP formatı Google tarafından geliştirilmiştir ve web’deki resimler için üstün kayıpsız ve kayıplı sıkıştırma sağlayan popüler, modern bir resim formatıdır. Genellikle JPG, PNG vb. dosyalardan çok daha küçüktür (%25 - %34) ve dolayısıyla web siteleri daha hızlı yüklenir. Şimdi JPG’yi Java’da WebP’ye dönüştürme konusundaki ayrıntıları keşfedelim.

JPG’den WebP’ye REST API

Aspose.Imaging Cloud SDK for Java, güvenilir görüntü işleme ve görüntü dönüştürme yetenekleri sunan en iyi çözümlerimizden biridir. Basit kod satırları kullanarak Java uygulamanızda görüntü işleme yetenekleri (düzenleme ve dönüştürme) sağlayın. API, raster görüntüleri, Photoshop dosyalarını, Meta dosyalarını ve WebP formatını işleyebilir. Şimdi bu makale kapsamında, Java uygulamasında jpg’yi webp’ye dönüştürmek için kullanacağız. Şimdi ilk adım, aşağıdaki bilgileri pom.xml (maven derleme tipi proje) içine dahil ederek java projemize API referansı eklemektir.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-imaging-cloud</artifactId>
        <version>22.4</version>
    </dependency>
</dependencies>

Java projesine REST API referansı eklendikten sonra, lütfen müşteri kimlik bilgilerinizi Cloud Dashboard‘dan alın. Aksi takdirde, geçerli bir e-posta adresi kullanırken önce ücretsiz bir hesap açmanız gerekir.

JPG’yi Java’da WebP’ye dönüştürün

Bu bölümde, Java kod parçacığını kullanarak JPG’den WebP’ye dönüştürme ile ilgili tüm detayları tartışacağız.

  • İlk olarak, kişiselleştirilmiş kimlik bilgilerini kullanarak bir ImagingApi nesnesi oluşturun
  • İkinci olarak, readAllBytes(…) yöntemini kullanarak JPG görüntüsünü yükleyin ve döndürülen değeri byte[] dizisine iletin
  • Üçüncü olarak, bağımsız değişken olarak JPEG görüntüsü sağlayarak bir UploadFileRequest örneği oluşturun ve bunu uploadFile(…) yöntemini kullanarak bulut depolama alanına yükleyin.
  • Şimdi, JPEG resim adını ve ‘webp’ biçimini bağımsız değişken olarak alan bir ConvertImageRequest nesnesi oluşturun.
  • JPG’den WebP’ye dönüştürme gerçekleştirmek için convertImage(…) yöntemini çağırın. Çıktı daha sonra yanıt akışı olarak döndürülür
  • Son olarak, ortaya çıkan WebP’yi FileOutputStream nesnesini kullanarak yerel sürücüye kaydedin.
// https://dashboard.aspose.cloud/ adresinden ClientID ve ClientSecret'i edinin
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";

// Görüntüleme nesnesi oluştur
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// yerel sürücüden giriş JPEG görüntüsünü yükle
File file1 = new File("butterfly-yellow.jpeg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// dosya yükleme isteği nesnesi oluştur
UploadFileRequest uploadRequest = new UploadFileRequest("input.jpg",imageStream,null);
// jpg görüntüsünü Bulut depolama alanına yükleyin
imageApi.uploadFile(uploadRequest);

// çıktı biçimini WebP olarak belirtin
String format = "webp";

// Görüntü dönüştürme isteği nesnesi oluştur
ConvertImageRequest convertImage = new ConvertImageRequest("input.jpg", format, null, null);
// JPG'yi WebP'ye dönüştürün ve çıktıyı yanıt akışında döndürün
byte[] resultantImage = imageApi.convertImage(convertImage);

// Ortaya çıkan WebP'yi yerel sürücüye kaydedin
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "output.webp");
fos.write(resultantImage);
fos.close();
jpg'den webp'ye

Resim: - JPG’den WebP’ye dönüştürme önizlemesi

Java’da PNG’den WebP’ye

Bulut depolama kullanmadan PNG’den WebP’ye dönüştürmeyi nasıl gerçekleştirebileceğimizin ayrıntılarını tartışalım. Kaynak görüntü yerel sürücüden yüklenir ve dönüştürmeden sonra elde edilen dosya da yerel sabit sürücüde depolanır.

  • İlk olarak, kişiselleştirilmiş kimlik bilgilerini kullanarak bir ImagingApi nesnesi oluşturun
  • İkinci olarak, PNG görüntüsünü readAllBytes(…) yöntemini kullanarak yükleyin ve byte[] dizisine geçin
  • Üçüncü olarak, bağımsız değişken olarak PNG görüntü adını ve webp biçimini alan bir CreateConvertedImageRequest nesnesi oluşturun.
  • Şimdi PNG’den WebP’ye dönüştürme gerçekleştirmek için createConvertedImage(…) yöntemini çağırın. Çıktı, yanıt akışı olarak döndürülür
  • Son olarak, ortaya çıkan WenP’yi FileOutputStream nesnesini kullanarak yerel sürücüye kaydedin.
// https://dashboard.aspose.cloud/ adresinden ClientID ve ClientSecret'i edinin
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";

// Görüntüleme nesnesi oluştur
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// PNG görüntüsünü yerel sürücüden yükle
File file1 = new File("source.png");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// çıktı biçimini WebP olarak belirtin
String format = "webp";

// Görüntü dönüştürme isteği nesnesi oluştur
CreateConvertedImageRequest convertRequest = new CreateConvertedImageRequest(imageStream,format,null,null);
// PNG'yi WebP'ye dönüştürün ve çıktıyı yanıt akışında döndürün
byte[] resultantImage = imageApi.createConvertedImage(convertRequest);

// Ortaya çıkan WebP'yi yerel sürücüye kaydedin
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "output.webp");
fos.write(resultantImage);
fos.close();

Not: - Ortaya çıkan WebP’yi bulut depolamaya kaydetmek için, CreateConvertedImageRequest nesnesini oluştururken WebP yolu ayrıntılarını iletin. Bu yaklaşımda, çıktı akışını yerel sürücüye depolamak için son adım atlanacaktır.

cURL Komutlarını kullanarak GIF’ten WebP’ye

Java kodu dışında, REST API’ye cURL komutları aracılığıyla da erişilebilir. Bu bölümde, cURL komutlarını kullanarak GIF’ten WebP’ye dönüştürme işlemi gerçekleştireceğiz. Şimdi ön koşul, aşağıdaki komutu kullanarak bir JWT erişim belirteci (istemci kimlik bilgilerine dayalı) oluşturmaktır.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

JWT oluşturulduktan sonra, GIF’ten WebP’ye dönüştürmeyi gerçekleştirmek ve çıktıyı yerel sürücüye kaydetmek için lütfen aşağıdaki komutu yürütün

curl -X -v GET "https://api.aspose.cloud/v3.0/imaging/UpdateGIFSampleImage.gif/convert?format=webp" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT>" \
-o "output.webp"

Çözüm

Makale, Java kullanarak JPG’yi WebP’ye, PNG’yi WebP’ye ve GIF’i WebP’ye dönüştürmekle ilgili tüm gerekli ayrıntıları sağlamıştır. Aynı zamanda cURL komutlarını kullanarak GIF’i WebP’ye dönüştürme adımlarını da öğrendik. Harika bir bilgi kaynağı olan Ürün Belgelerini keşfetmenizi şiddetle tavsiye ettiğimizi lütfen unutmayın. Şu anda REST API tarafından sunulan diğer heyecan verici özellikler hakkında sizi aydınlatacaktır.

Ayrıca, API özelliklerini SwaggerUI aracılığıyla (bir web tarayıcısı içinde) test etmeyi de düşünebilirsiniz ve kaynak kodunu indirmeniz ve değiştirmeniz gerekirse GitHub adresinden erişilebilir (yayınlanmıştır) MIT lisansı altında). Son olarak, API’yi kullanırken herhangi bir sorunla karşılaşırsanız, hızlı bir çözüm için ücretsiz ürün destek forumu aracılığıyla bizimle iletişime geçmekten çekinmeyin.

İlgili Makaleler

Hakkında daha fazla bilgi edinmek için lütfen aşağıdaki bağlantıları ziyaret edin: