Mac OS конвертируем, сжимаем и управляем изображениями в HEIC, JPEG и PNG
Часто приходится сталкиваться с оптимизацией изображений в JPG/JPEG и PNG для веба, а также конвертации из HEIC в JPG.
Ввиду этого решил написать маленькую заметку по нескольким хорошим и полезным утилитам для Mac OS, которые очень выручают: jpegoptim, optipng и sips.
1) JPEGOptim
JPEGOptim — это мощный кросс-платформенный инструмент для сжатия JPEG-изображений без потери качества (или с контролируемыми потерями).
Он удаляет метаданные и оптимизирует JPEG-структуру, уменьшая размер файла.
Часто использую для пост-обработки архивных изображений в веб-сервисах. Это позволяет освобождать десятки и сотни гигабайт места на дисках для изображений в JPG, при этом картинки остаются "визуально читаемыми".
Установка на Mac OS:
brew install jpegoptim
Сжатие без потерь
jpegoptim image.jpg
Уменьшает размер, сохраняя качество и удаляет метаданные.
Сжать все JPEG в папке
jpegoptim *.jpg
Удалить EXIF и другие метаданные
jpegoptim --strip-all image.jpg
Удаляет комментарии, EXIF, профили ICC и пр.
Мой вариант - сильное сжатие и замена оригинала
jpegoptim -f --max=30 --strip-all image.jpg
Снижает качество до 30% (--max=30), заменяет оригинал (-f) и удаляет все метаданные (--strip-all)
2) OptiPNG
OptiPNG — это мощный инструмент для сжатия PNG-изображений без потерь. Он оптимизирует структуру файла, уменьшает его размер и может улучшать сжатие за счет выбора оптимальных параметров.
Когда PNG слишком тяжелая, а хочется поменьше без критичных потерь.
Установка на Mac OS:
brew install optipng
Базовое сжатие (без потерь)
optipng image.png
Агрессивное сжатие (уровень оптимизации)
optipng -o7 image.png
-o7 — максимальный уровень оптимизации (медленнее, но лучше сжимает).
Быстрая оптимизация: -o2 (хороший баланс скорости и сжатия).
Максимальное сжатие: -o7 -zm1-9 (очень медленно, но дает лучший результат).
С удалением метаданных: -o5 -strip all (чистый PNG без лишних данных).
С сохранением оригиналов (бэкап)
optipng -backup -clobber image.png
3) SIPS
Если нужно оперативно конвертировать HEIC в JPG на Mac OS через Terminal без установки сторонних библиотек, то можно использовать встроенную утилиту sips (Scriptable Image Processing System).
Простая конвертация одного файла
sips -s format jpeg input.heic --out output.jpg
Пакетная конвертация всех HEIC в папке
mkdir -p jpg_output && \
for file in *.heic; do
sips -s format jpeg "$file" --out "jpg_output/${file%.heic}.jpg"
done
Конвертация с настройкой качества (85%)
sips -s format jpeg -s formatOptions 85 input.heic --out output.jpg
Стоит отметить, что в некоторых старых версиях macOS sips может не работать с HEIC.