Jawabannya ada dalam Tutorial Dokumentasi Java untuk Menulis / Menyimpan Gambar .
The Image I/O
kelas menyediakan metode berikut untuk menyimpan gambar:
static boolean ImageIO.write(RenderedImage im, String formatName, File output) throws IOException
Tutorial menjelaskan itu
Kelas BufferedImage mengimplementasikan antarmuka RenderedImage.
sehingga bisa digunakan dalam metode.
Sebagai contoh,
try {
BufferedImage bi = getMyImage(); // retrieve image
File outputfile = new File("saved.png");
ImageIO.write(bi, "png", outputfile);
} catch (IOException e) {
// handle exception
}
Penting untuk mengelilingi write
panggilan dengan blok percobaan karena, sesuai API , metode ini akan menampilkan IOException
"jika terjadi kesalahan selama penulisan"
Juga dijelaskan tujuan, parameter, pengembalian, dan lemparan metode, secara lebih rinci:
Menulis gambar menggunakan ImageWriter arbitrer yang mendukung format yang diberikan ke File. Jika sudah ada File, isinya akan dibuang.
Parameter:
im - RenderedImage yang akan ditulis.
formatName - String yang berisi nama informal format.
output - File yang akan ditulis.
Pengembalian:
false jika penulis yang sesuai tidak ditemukan.
Melempar:
IllegalArgumentException - jika ada parameter yang null.
IOException - jika terjadi kesalahan selama penulisan.
Namun, formatName
mungkin masih tampak agak kabur dan ambigu; tutorial menjelaskannya sedikit:
Metode ImageIO.write memanggil kode yang mengimplementasikan penulisan PNG sebagai "plug-in penulis PNG". Istilah plug-in digunakan karena Image I / O dapat diperluas dan dapat mendukung berbagai format.
Tetapi plugin format gambar standar berikut: JPEG, PNG, GIF, BMP dan WBMP selalu ada.
Untuk sebagian besar aplikasi, cukup menggunakan salah satu dari plugin standar ini. Mereka memiliki keuntungan karena selalu tersedia.
Namun, ada format tambahan yang dapat Anda gunakan:
Kelas Image I / O menyediakan cara untuk menyambungkan dukungan untuk format tambahan yang dapat digunakan, dan banyak plugin semacam itu ada. Jika Anda tertarik dengan format file apa yang tersedia untuk dimuat atau disimpan di sistem Anda, Anda dapat menggunakan metode getReaderFormatNames dan getWriterFormatNames dari kelas ImageIO. Metode ini mengembalikan larik string yang mencantumkan semua format yang didukung di JRE ini.
String writerNames[] = ImageIO.getWriterFormatNames();
Array nama yang dikembalikan akan menyertakan plug-in tambahan yang diinstal dan salah satu nama ini dapat digunakan sebagai nama format untuk memilih penulis gambar.
Untuk contoh lengkap dan praktis, seseorang dapat merujuk ke contoh Oracle SaveImage.java
.