/**
* ImageFileManager adalah Class dengan fungsi yang kecil dengan
* methods statis untuk load dan save gambar
*
* @author Muhammad Bagus Istighar
* @version 10 Desember 2020
*/
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ImageFileManager
{
// Format gambar yang dipakai adalah jpg dan png
private static final String IMAGE_FORMAT= "jpg";
/**
* Membaca file image dari disk dan return sebagai image. metode ini
* bisa membaca file JPG dan PNG. Jika ada masalah seperti filenya yang tidak ada,
* undecodeable format, atau error apapun maka metode ini akan
* return null
* @param imageFile file image yang akan di load
* @return image object atau null jika ga bisa diread
*/
public static OFImage loadImage(File imageFile){
try{
BufferedImage image = ImageIO.read(imageFile);
if(image==null || (image.getWidth() < 0)){
// artinya gak bisa load gambar - format invalid
return null;
}
return new OFImage(image);
}
catch ( IOException exc){
return null;
}
}
/**
* write file gambar ke disk dengan format JPG.
* jika ada masalah maka return saja.
* @param image image yang akan disimpan
* @param file tempat file yang digunakan untuk menyimpan
*/
public static void saveImage(OFImage image, File file){
try{
ImageIO.write(image, IMAGE_FORMAT, file);
}
catch ( IOException exc){
return;
}
}
}