«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу точно настроить уровни сжатия JPEG с помощью Java ImageIO?

Как я могу точно настроить уровни сжатия JPEG с помощью Java ImageIO?

Опубликовано 2 ноября 2024 г.
Просматривать:322

How Can I Fine-Tune JPEG Compression Levels Using Java\'s ImageIO?

Регулировка уровня сжатия JPEG в Java с помощью ImageIO

В сфере манипулирования изображениями контроль уровня сжатия файлов JPEG имеет важное значение для балансировки качество изображения и размер файла. Хотя уровень сжатия по умолчанию для ImageIO не всегда может быть достаточным, в этой статье рассматривается, как точно настроить этот параметр.

Непосредственное получение ImageWriter

Прямой подход включает в себя получение ImageWriter для формата JPEG:

ImageWriter jpgWriter = ImageIO.getImageWritersByFormatName("jpg").next();

Установка параметров явного сжатия

Чтобы явно задать уровень сжатия, используйте класс ImageWriteParam:

ImageWriteParam jpgWriteParam = jpgWriter.getDefaultWriteParam();
jpgWriteParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);

Регулировка качества сжатия

Желаемый уровень сжатия указывается в виде числа с плавающей точкой между 0,0f (максимальное сжатие, минимальное качество) и 1.0f (минимальное сжатие, максимальное качество):

jpgWriteParam.setCompressionQuality(0.7f); // Set a compression quality of 70%

Запись вывода

Для вывода изображения ImageWriter требуется ImageOutputStream:

ImageOutputStream outputStream = createOutputStream(); // Generate an OutputStream (e.g., a FileImageOutputStream)
jpgWriter.setOutput(outputStream);

Финализация

После записи изображения ImageWriter должен быть удален:

jpgWriter.dispose();

В заключение, напрямую получая ImageWriter и устанавливая явные параметры сжатия, вы получаете точный контроль над уровнем сжатия JPEG, оптимизируя качество изображения и размер файла в соответствии с вашими конкретными требованиями.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3