görüntüyü yeniden boyutlandırmak

Java Cloud SDK kullanarak Görüntüyü Yeniden Boyutlandırma

Kişisel ve resmi yaşamımız raster görüntülerle çevrilidir. Cep telefonlarını, tarayıcıları, görüntüleme cihazlarını ve çeşitli cihazlarda kullanılan çeşitli kameraları kullanırken görüntü olarak çok büyük miktarda veri üretiyoruz. Artık sıkıştırma algoritmasına bağlı olarak, her cihaz görüntüleri farklı boyutlarda ve boyutlarda üretiyor. Ancak görüntüleri (JPG, PNG, GIF, TIFF vb.) birleştirilmiş boyutlarda depolama gereksinimimiz olması durumunda, görüntüleri yeniden boyutlandırın. Piyasada çok sayıda fotoğraf yeniden boyutlandırma uygulamamız var, ancak görüntüyü çevrimiçi olarak toplu olarak yeniden boyutlandırmamız gerekirse, programatik bir çözüm her zaman geçerli bir yaklaşımdır. Bu nedenle, bu yazıda, Java Cloud SDK kullanarak resim yeniden boyutlandırmanın nasıl geliştirileceğine ilişkin ayrıntıları/adımları tartışacağız.

Görüntü Yeniden Boyutlandırma API’sı

Görüntüyü yeniden boyutlandırmak için Aspose.Imaging Cloud SDK for Java kullanacağız. REST tabanlı mimarisi sayesinde API’ye herhangi bir platformdan erişebilir ve fotoğraf yeniden boyutlandırıcı geliştirebiliriz. Görüntüyü çevrimiçi olarak yeniden boyutlandırma özelliğinin yanı sıra, görüntü dosyalarını oluşturmanıza, düzenlemenize ve çeşitli desteklenen dosya biçimlerine dönüştürmenize de olanak tanır. Şimdi başlamak için, pom.xml’de (maven yapı tipi proje) aşağıdaki bilgileri dahil ederek referansını java projesine eklememiz gerekiyor.

<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>

Aspose Cloud Dashboard üzerinde bir hesabınız yoksa lütfen geçerli e-posta adresi üzerinden ücretsiz bir hesap oluşturun. Şimdi yeni oluşturulan hesabı kullanarak oturum açın ve Cloud Dashboard’ta Müşteri Kimliği ve İstemci Sırrı arayın/oluşturun. Bu ayrıntılar, aşağıdaki bölümlerde kimlik doğrulama amacıyla gereklidir.

Java’da Görüntüyü Yeniden Boyutlandırma

Bu bölümde, PNG görüntüsünün nasıl yeniden boyutlandırılacağına ilişkin adımlar açıklanmaktadır. API, görüntüyü doğrudan istek gövdesine geçirmemiz gereken yerel sürücüden yüklemeyi bekler. Resize png işleminden sonra outPath parametre değerini belirterek güncel imajı Cloud Storage üzerine kaydedebiliriz. Ancak, değeri belirtmezsek, yanıt akışlı bir görüntü içerir.

  • Kişiselleştirilmiş müşteri kimlik bilgilerine dayalı olarak bir ImagingApi örneği oluşturun
  • File nesnesini kullanarak yerel klasördeki PNG dosyasını okuyun
  • byte[] örneği oluşturun ve readAllBytes(…) yöntemini kullanarak dosyadaki tüm baytları okuyun
  • Tamsayı nesneleri kullanarak yeni görüntü boyutları belirleyin
  • Şimdi, ortaya çıkan görüntünün adını belirttiğimiz bir CreateResizeImageRequest örneği oluşturun.
  • Son olarak, createResizeImage(…) yöntemini kullanarak görüntüyü yeniden boyutlandırın
// https://dashboard.aspose.cloud/ adresinden ClientID ve ClientSecret'i edinin
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

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

// yerel sürücüden dosya yükle
File f = new File("PinClipart.png");

// PNG görüntüsünün içeriğini bayt dizisine oku
byte[] bytes = Files.readAllBytes(f.toPath());
			
// Ortaya çıkan görüntü için yeni boyutlar
int newWidth = 150;
int newHeight = 150;
		    
// ortaya çıkan görüntü adını belirtirken yeniden boyutlandırma görüntü isteği oluştur
CreateResizedImageRequest resizeRequest = new CreateResizedImageRequest(bytes, newWidth, newHeight, null, "Updated.png", null);

// görüntüyü çevrimiçi olarak yeniden boyutlandırın ve çıktıyı bulut depolamaya kaydedin
imageApi.createResizedImage(resizeRequest);

CURL Komutlarını Kullanarak GIF’i Yeniden Boyutlandırma

Görüntü yeniden boyutlandırma işlemi sırasında, görüntü için güncellenen formatı da belirtebiliriz. Bu bölümde, GIF’i yeniden boyutlandıracağız ve cURL komutlarını kullanarak çıktıyı JPG formatında kaydedeceğiz. Bu nedenle, ön koşul olarak, aşağıdaki komutu yürütürken önce bir JWT erişim belirteci (istemci kimlik bilgilerine dayalı olarak) oluşturmamız gerekir.

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 belirteci oluşturulduktan sonra, resmi yeniden boyutlandırmak ve çıktıyı JPG biçiminde yerel sürücüye kaydetmek için lütfen ResizeImage API’yi arayın (sonuçta elde edilen dosya biçimi parametresi isteğe bağlıdır).

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/winter.gif/resize?newWidth=200&newHeight=200&format=JPG" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o "resultant.jpg"
görüntüyü yeniden boyutlandırmak

GIF Önizlemesini Yeniden Boyutlandır

Kaynak GIF görüntüsü winter.gif adresinden ve ortaya çıkan görüntü resultant.jpg adresinden indirilebilir.

Çözüm

Java kod parçacığını kullanarak görüntüyü çevrimiçi olarak yeniden boyutlandırmak için harika bir yaklaşım öğrendik. Ayrıca, cURL komutlarını kullanarak görüntünün kaliteden ödün vermeden nasıl yeniden boyutlandırılacağı konusunda da bizi aydınlattı. Swagger API Referansı’nı kullanırken web tarayıcısındaki API yeteneklerini de keşfedebileceğinizi lütfen unutmayın. Artık Picture Resizer özelliklerinin yanı sıra Ürün Belgeleri’nden API’nin diğer heyecan verici özelliklerini keşfedebilir ve bunlar hakkında bilgi edinebilirsiniz. Bununla birlikte, tüm Bulut SDK’larımız MIT lisansı altında yayınlanmaktadır, bu nedenle kaynak kodunun tamamını GitHub indirmeyi düşünebilirsiniz (gereksinimlerinize göre değiştirebilirsiniz). 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 bize ulaşmayı düşünebilirsiniz.

İlgili Makaleler

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