Размер файла увеличивается не по альфа-каналу, а по типу файла.JPG использует сжатие с потерями;PNG - сжатие без потерь.Другими словами, JPG выбрасывает некоторые данные, чтобы уменьшить размер файла.Вот почему вы выбираете уровень «качество» при сохранении в JPG - это определяет, сколько выбрасывается.
Откуда вы знаете, что у вас есть альфа-канал?Если вы все еще хотите PNG и хотите быть уверены, что вы отбрасываете альфа-канал, установите тип изображения на BufferedImage.TYPE_RGB, например
BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_BYTE_RGB);
. Вам нужно будет связать графический объект с новымBufferedImage и скопируйте jpg на него, затем запишите его. Этот вопрос не совсем совпадает с вашим, но содержит пример кода, который вы можете найти полезным.
Пол