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

Java kullanarak TIFF Resmini Yeniden Boyutlandırma

TIFF dosyalarının öne çıkan özelliklerinden biri, birden çok görüntüyü (her biri birden çok kanala sahiptir) sıralı çerçeveler olarak bir zaman yığınında veya z-yığında görüntü depolama yeteneğidir. Şimdi bu yazıda, bir TIFF çerçevesini ayıklama, yeniden boyutlandırma ve ayrı bir depolama birimine kaydetme adımlarını açıklayacağız. Yeniden boyutlandırma çevrimiçi işlemi, güncellenmiş TIFF Çerçevesini kaydederken yeni boyutlara (genişlik ve yükseklik) hitap eder.

Resim API’sini Yeniden Boyutlandır

Aspose.Imaging Cloud SDK for Java, raster görüntüleri, Meta dosyaları ve Photoshop’u programlı olarak düzenlemenizi, değiştirmenizi ve çeşitli Desteklenen Formatlara dönüştürmenizi sağlayan REST tabanlı çözümümüzdür. Ayrıca, bireysel TIFF çerçeveleri üzerinde çalışabileceğimiz TIFF görüntülerini değiştirme özelliği de sunar. Şimdi, SDK kullanımına başlamak için bir Java projesine referansını eklememiz gerekiyor. Bu nedenle, lütfen maven yapı türü projesinin pom.xml dosyasına aşağıdaki ayrıntıları ekleyin.

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

Sonraki adım, Cloud Dashboard’tan müşteri kimlik bilgilerini almaktır ve Aspose Cloud Dashboard üzerinde bir hesabınız yoksa, lütfen geçerli bir e-posta adresi kullanarak ücretsiz bir hesap oluşturun.

Java’da Çevrimiçi Görüntüyü Yeniden Boyutlandırma

Bu bölümde, TIFF resim boyutlandırıcımızı geliştirmek için GetImageFrame API’sini kullanacağız. Görüntüyü bulut depolamaya da yükleyeceğiz ve görüntü parametrelerini güncelledikten sonra, değiştirilen görüntü yanıt akışında döndürülür. Lütfen API’nin fotoğrafları toplu olarak yeniden boyutlandırmanıza veya saveOtherFrames parametresini kullanarak yalnızca belirli bir TIFF çerçevesini yeniden boyutlandırmanıza olanak tanıdığını unutmayın.

  • İlk olarak, kişiselleştirilmiş müşteri kimlik bilgilerini kullanarak bir ImagingApi nesnesi oluşturun
  • İkinci olarak, readAllBytes(…) yöntemini kullanarak ilk TIFF görüntüsünün içeriğini okuyun ve onu byte[] dizisine döndürün
  • Üçüncü olarak, TIFF görüntüsünün adını ilettiğimiz bir UploadFileRequest sınıfı örneği oluşturun.
  • Şimdi ilk TIFF görüntüsünü uploadFile(…) yöntemini kullanarak bulut depolamaya yükleyin
  • Bir sonraki adım, TIFF çerçeve indeksini, yeni yükseklik ve genişlik boyutlarını ve özel tiff çerçeve indeksini belirlemektir.
  • Şimdi, giriş TIFF resim adını ve yukarıda tanımlanmış özellikleri ilettiğimiz bir GetImageFrameRequest nesnesi oluşturun.
  • Belirtilen TIFF çerçevesini elde etmek için ImagingAPI sınıfının getImageFrame(…) yöntemini çağırın
  • Son olarak, çıkarılan çerçeveyi FileOutputStream nesnesini kullanarak yerel sürücüye kaydedin.
// ClientID ve ClientSecret'i https://dashboard.aspose.cloud/ adresinden alın
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

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

// yerel sistemden ilk TIFF görüntüsünü yükle
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// dosya yükleme isteği nesnesi oluştur
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// ilk TIFF görüntüsünü Bulut depolamaya yükle
imageApi.uploadFile(uploadRequest);

Integer frameId = 0; // Frame number inside TIFF
// çıkarılan çerçevenin yeni genişliği ve yüksekliği
Integer newWidth = 400;
Integer newHeight = 600;

// Sonuç yalnızca belirtilen çerçeveyi içerir, diğer çerçeveleri içermez
Boolean saveOtherFrames = false;

// Belirtilen ayrıntılara göre tiff çerçevelerini çıkarmak için bir istek nesnesi oluşturun
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
                    null, null, null, null, null, saveOtherFrames, null, null);

// çıkarılan çerçeve yanıt akışında döndürülür
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);

// Ayıklanan TIFF çerçevesini yerel depolamaya kaydedin
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
tiff çerçevesini yeniden boyutlandırma

TIFF Çerçevesini Yeniden Boyutlandır Önizleme

Yukarıdaki örnekte kullanılan örnek TIFF görüntüleri TiffSampleImage.tiff adresinden indirilebilir.

CURL Komutlarını Kullanarak Görüntü Boyutunu Küçültün

API’nin REST mimarisi sayesinde cURL komutları ile de erişilebilir. Dolayısıyla bu bölümde, cURL komutlarını kullanarak görüntü boyutunun nasıl küçültüleceğine veya belirli boyutlarda tiff çerçevenin nasıl çıkarılacağına ilişkin ayrıntıları tartışacağız. Şimdi, ilk adım, 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 belirteç oluşturma işleminden sonra, TIFF çerçevesini yeniden boyutlandırmak için aşağıdaki komutu uygulamamız gerekir.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.tiff/frames/0?newWidth=400&newHeight=600&saveOtherFrames=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"
-o ResizedFrame.tiff

Çözüm

Bu makale, Java kullanarak görüntünün (TIFF) nasıl yeniden boyutlandırılacağına ilişkin basit ama şaşırtıcı ayrıntılar sağladı. Bu öğretici ayrıca, cURL komutlarını kullanarak TIFF çerçevesini yeniden boyutlandırmanın tüm adımlarını açıkladı. API yeteneklerini test etmek için başka bir seçeneğin de bir web tarayıcısında SwaggerUI olduğunu lütfen unutmayın. Ayrıca, SDK’nın kaynak kodunu değiştirmekle ilgileniyorsanız, MIT lisansı altında yayınlandığı için GitHub adresinden indirilebilir.

Yine de Ürün Belgeleri, API’nin diğer heyecan verici özellikleri hakkında gerekli tüm ayrıntıları öğrenmek için harika bir bilgi kaynağıdır. Son olarak, API’yi kullanırken sorunlarla karşılaşırsanız ücretsiz ürün destek forumu aracılığıyla hızlı bir çözüm için 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: