Вы можете создать BufferedImage
BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
TYPE_INT_ARGB - представляет изображение с 8-битными цветовыми компонентами RGBA с цветами Синий, Зеленый и Красный, сохраненными в 3 байтах и 1 байте альфа. (Альфа означает прозрачность)
Вы можете легко читать и записывать несколько форматов из файлов. См. документы
BufferedImage img = null;
try {
img = ImageIO.read(new File("strawberry.jpg"));
}
catch (IOException e) {
// log
}
Прозрачность поддерживается не для всех форматов. Только PNG и GIF поддерживают прозрачность (afaik).