Как уменьшить скриншоты в MacOS
Есть такая проблема, что большинство скриншотов на маке весят достаточно много. Один скрин всего экрана на ретине ≈1,6МB. Чтобы уменьшить вес для личных и рабочих проектов, но при этом минимально потерять в качестве можно использовать Hazel + скрипт + утилиты для сжатия. При этом все будет запускаться автоматически при попадании в определенную папку.
# Ставим утилиту pngquant через Homebrew для уменьшения цветовой палитры
brew install pngquant
# Ставим утилиту zopfli через Homebrew для агрессивного сжатия без потерь
brew install zopfli
# Копируем скрипт и указываем /bin/zsh для запуска
pngquant 64 --skip-if-larger --strip --ext=.png --force "$1"
zopflipng -y "$1" "$1"Настраиваем Hazel: добавляем запуск shell-скрипт, скопированный выше:
Сравниваем разницу. Исходные файлы удалось уменьшить на 80%:
Демонстрация работы
Полезные ссылки
Официальный сайт утилиты ImageAlpha
Официальный сайт утилиты pngquant
Учим Hazel грабить PDF-документы
Что то мне подсказывает что оригинальная идея принадлежит автору этого поста – https://about.gitlab.com/blog/2020/01/30/simple-trick-for-smaller-screenshots/
По мотивам)
В CleanShot можно выбрать WebP и дальше сжимать его, размер файла уменьшится еще в 2-3 раза по сравнению с PNG.
CWEBP_PATH=“/opt/homebrew/bin/cwebp”
$CWEBP_PATH -q 80 -m 4 -sharp_yuv “$1” -o “$1”
-q 80: Качество 80 (оптимальный баланс веса и четкости текста)
-m 6: Максимальный метод сжатия (работает медленнее, но жмет сильнее)
-sharp_yuv: Сохраняет четкость цветовых переходов (критично для текста)
Павел, спасибо. Можно выбрать WebP, но только зачем? С ним же дальше неудобно работать