Сжатие изображения перед сохранением на диск в Java - PullRequest
2 голосов
/ 15 апреля 2011

Можно ли сжать изображение перед его сохранением? Я использую класс Robot для захвата изображений, и он возвращает BufferedImage. Как я могу сжать это изображение и затем сохранить его?

Ответы [ 2 ]

3 голосов
/ 15 апреля 2011

.png файлы представляют собой (без потерь) сжатые изображения.

Вы можете использовать ImageIO.write () до сохранить изображение в формате .png :

ImageIO.write(myBufferedImage, "png", outputfile);
0 голосов
/ 19 января 2018

Существует сжатие цветов («качество сжатия») и разрешение сжатия («изменение размера»). Например. Я получил фото 4 Мб с разрешением 270 КБ с очень низким «качеством сжатия», но это выглядело ужасно, но я уменьшил его до 12 КБ с приемлемым качеством, но меньшего размера.

Моя рекомендация по изменению размера:

https://github.com/rkalla/imgscalr/blob/master/src/main/java/org/imgscalr/Scalr.java

Хотелось бы, чтобы изменение размера было частью стандартных библиотек Java, но, похоже, это не так (или есть проблемы с качеством изображения со стандартными методами?). Но библиотека Рияда действительно маленькая - это всего лишь один класс. Я просто скопировал этот класс в свой проект, потому что я никогда не учился использовать Maven, и он прекрасно работает. Как мне сжать изображения с помощью Java?

Моя рекомендация по качеству сжатия: см. Ответ fujy в:

Как мне сжать изображения с помощью Java?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...