Ubah ukuran gambar

Ubah ukuran Gambar TIFF menggunakan Java

Salah satu fitur yang menonjol dari file TIFF adalah kemampuannya untuk menyimpan banyak gambar (masing-masing memiliki banyak saluran) sebagai bingkai berurutan dalam tumpukan waktu atau z-tumpukan gambar. Sekarang dalam artikel ini, kami akan menjelaskan langkah-langkah untuk mengekstrak bingkai TIFF, mengubah ukurannya, dan menyimpannya secara terpisah di penyimpanan. Operasi pengubahan ukuran gambar online melayani dimensi baru (lebar & tinggi) sambil menyimpan Bingkai TIFF yang diperbarui.

Ubah Ukuran Gambar API

Aspose.Imaging Cloud SDK for Java adalah solusi berbasis REST kami yang memungkinkan Anda mengedit, memanipulasi, dan mengubah gambar raster, Metafiles, dan Photoshop secara terprogram ke berbagai Format yang Didukung. Ini juga menawarkan fitur untuk memanipulasi gambar TIFF, di mana kita bahkan dapat mengerjakan frame TIFF individual. Sekarang, untuk memulai penggunaan SDK, kita perlu menambahkan referensinya di proyek Java. Jadi, harap tambahkan detail berikut di pom.xml dari proyek tipe maven build.

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

Langkah selanjutnya adalah mendapatkan kredensial klien dari Cloud Dashboard dan jika Anda tidak memiliki akun melalui Aspose Cloud Dashboard, harap buat akun gratis menggunakan alamat email yang valid.

Ubah Ukuran Gambar Online di Java

Di bagian ini, kita akan menggunakan GetImageFrame API untuk mengembangkan pengubah ukuran gambar TIFF kita. Kami juga akan mengunggah gambar ke penyimpanan cloud dan setelah memperbarui parameter gambar, gambar yang dimodifikasi dikembalikan dalam aliran respons. Harap perhatikan bahwa API memungkinkan Anda untuk mengubah ukuran foto secara massal atau hanya mengubah ukuran bingkai TIFF tertentu menggunakan parameter saveOtherFrames.

  • Pertama, buat objek ImagingApi menggunakan kredensial klien yang dipersonalisasi
  • Kedua, baca konten gambar TIFF pertama menggunakan metode readAllBytes(…) dan kembalikan ke array byte[]
  • Ketiga, buat instance kelas UploadFileRequest tempat kami meneruskan nama gambar TIFF
  • Sekarang unggah gambar TIFF pertama ke penyimpanan cloud menggunakan metode uploadFile(…).
  • Langkah selanjutnya adalah menentukan indeks bingkai TIFF, dimensi tinggi & lebar baru, dan indeks bingkai tiff tertentu
  • Sekarang buat objek GetImageFrameRequest tempat kami meneruskan nama gambar input TIFF dan properti yang ditentukan di atas
  • Panggil metode getImageFrame(…) dari kelas ImagingAPI untuk mendapatkan bingkai TIFF yang ditentukan
  • Terakhir, simpan frame yang diekstraksi ke drive lokal menggunakan objek FileOutputStream
// Dapatkan ClientID dan ClientSecret dari https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// membuat objek Imaging
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// muat gambar TIFF pertama dari sistem lokal
File file1 = new File("TiffSampleImage.tif");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// buat objek permintaan unggah file
UploadFileRequest uploadRequest = new UploadFileRequest("input.tiff",imageStream,null);
// unggah gambar TIFF pertama ke penyimpanan Cloud
imageApi.uploadFile(uploadRequest);

Integer frameId = 0; // Frame number inside TIFF
// lebar & tinggi baru bingkai yang diekstraksi
Integer newWidth = 400;
Integer newHeight = 600;

// Hasil hanya menyertakan bingkai yang ditentukan, bukan bingkai lain
Boolean saveOtherFrames = false;

// Buat objek permintaan untuk mengekstrak bingkai tiff berdasarkan detail yang ditentukan
GetImageFrameRequest getImageFrameRequest = new GetImageFrameRequest("input.tiff", frameId, newWidth, newHeight,
                    null, null, null, null, null, saveOtherFrames, null, null);

// frame yang diekstraksi dikembalikan dalam aliran respons
byte[] updatedImage = imageApi.getImageFrame(getImageFrameRequest);

// Simpan bingkai TIFF yang diekstraksi di penyimpanan lokal
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Extracted-TIFF.tiff");
fos.write(updatedImage);
fos.close();
mengubah ukuran bingkai tiff

Ubah ukuran Pratinjau Bingkai TIFF

Contoh gambar TIFF yang digunakan dalam contoh di atas dapat diunduh dari TiffSampleImage.tiff.

Kurangi Ukuran Gambar menggunakan Perintah cURL

Karena arsitektur REST API, itu juga dapat diakses melalui perintah cURL. Jadi pada bagian ini, kita akan membahas detail tentang cara memperkecil ukuran gambar atau mengekstrak bingkai tiff dengan dimensi tertentu, menggunakan perintah cURL. Sekarang, langkah pertama adalah membuat token akses JWT (berdasarkan kredensial klien) menggunakan perintah berikut.

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"

Setelah pembuatan token JWT, kita perlu menjalankan perintah berikut untuk mengubah ukuran frame TIFF.

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

Kesimpulan

Artikel ini telah memberikan detail sederhana namun menakjubkan tentang cara mengubah ukuran gambar (TIFF) menggunakan Java. Tutorial ini juga menjelaskan semua langkah untuk mengubah ukuran bingkai TIFF menggunakan perintah cURL. Perhatikan bahwa opsi lain untuk menguji kemampuan API adalah melalui SwaggerUI di dalam browser web. Selain itu, jika Anda tertarik untuk memodifikasi kode sumber SDK, ini dapat diunduh dari GitHub, karena diterbitkan di bawah lisensi MIT.

Namun demikian, Dokumentasi Produk adalah sumber informasi yang luar biasa untuk mempelajari semua detail yang diperlukan tentang fitur menarik lainnya dari API. Terakhir, jika Anda mengalami masalah saat menggunakan API, Anda dapat mempertimbangkan untuk menghubungi kami untuk mendapatkan penyelesaian cepat melalui forum dukungan produk gratis.

Artikel Terkait

Silakan kunjungi tautan berikut untuk mempelajari lebih lanjut tentang: