Я хочу, чтобы изображение в моем приложении составляло не более 200x200 пикселей, а размер изображения не более 150 кБ. Например, если размер файла изображения составляет более 150 КБ, мне нужно сделать его 150 кБ. Изображение может быть типа JPEG, PNG и т.д.Уменьшить размер изображения в java
У меня есть следующий код для изменения размера изображения до заданной ширины и высоты
private BufferedImage resize(BufferedImage img, int newW, int newH) {
int w = img.getWidth();
int h = img.getHeight();
BufferedImage dimg = new BufferedImage(newW, newH, img.getType());
Graphics2D g = dimg.createGraphics();
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null);
g.dispose();
return dimg;
}
Но им не уверен, как идти о снижении размера файла 150 кБ. Как это сделать в java?. Некоторый пример будет действительно оценен.
Спасибо
Просьба пояснить: пытаетесь ли вы уменьшить размер отображаемого изображения (как указано в заголовке этого вопроса, и если да, что не так с кодом, который у вас есть) или размером файла (как вы заявляете на одной из своих последних строк)? –
Уменьшить размер файла – Kris