Pngquant - это бесплатная кроссплатформенная утилита командной строки с открытым исходным кодом для сжатия PNG с потерями. Она основана на переносимой библиотеке libimagequant и написана на C99. Она позволяет значительно уменьшить размер файла за счет преобразования изображения PNG в более эффективный 8-разрядный формат PNG и полностью сохраняет альфа-прозрачность. Как вы, возможно, уже знаете, 8-битные PNG-файлы часто на 60-80% меньше, чем 24/32-битные PNG-файлы. Изображения, сжатые с помощью Pngquant, полностью совместимы со всеми веб-браузерами и операционными системами. Pngquant может сжимать одно или несколько изображений одновременно.
Основные возможности Pngquant:
- поддержка пакетного преобразования нескольких файлов PNG;
- генерация высококачественной генерация палитры;
- использует алгоритм квантования Median Cut для оптимизации изображений;
- может быть легко интегрирована со скриптами оболочки, графическими интерфейсами и серверным программным обеспечением;
- конвертирует изображения с заданным качеством и пропускает изображения, которые нельзя конвертировать с требуемым качеством;
- поддержка многоядерности и оптимизация Intel SSE.
Установка
Pngquant может быть установлен разными способами.
Установка Pngquant из репозитория дистрибутива
Pngquant доступен в репозиториях по умолчанию большинства дистрибутивов Linux.
В Arch Linux и его вариантах Pngquant доступен в репозитории [Community]. Включите репозиторий Community и установите ее, используя Pacman, как показано ниже.
В Debian, Ubuntu, Linux Mint:
В Ubuntu и системах на его основе вам необходимо активировать репозиторий [Universe], чтобы установить Pngquant.
Активация репозитория Universe выполняется с помощью команды:
В Fedora:
В openSUSE:
В CentOS:
Проверьте версию установленной Pngquant:
Версия Pngquant, доступная в репозиториях по умолчанию, может быть старой. Если вы хотите самую последнюю версию, скомпилируйте и вручную установите ее из исходного кода, как показано ниже.
Установка Pngquant из исходного кода
Сначала установите необходимые зависимости.
В Debian, Ubuntu:
В CentOS, Fedora:
Далее, клонируйте репозиторий git последней версии Pngquant:
Приведенная выше команда загрузит содержимое репозитория Pngquant GitHub и сохранит его в папке с именем «pngquant» в вашем текущем рабочем каталоге.
Перейдите в каталог pngquant:
Наконец, выполните следующие команды для компиляции и установки Pngquant:
Pngquant по умолчанию будет установлен в папку /usr/local/bin. Если вы хотите установить его в другой каталог, выполните команду:
Замените «dir» на ваш путь. Сначала нужно выполнить эту команду, а затем выполнить команду «sudo make install».
Проверьте версию Pngquant:
Установка Pngquant с помощью Cargo
Pngquant также можно установить с помощью диспетчера пакетов Cargo. Сначала установите Rust, как описано по ссылке ниже.
Клонируйте репозиторий git с последней версией Pngquant:
Наконец, соберите и установите Pngquant, используя Cargo, как показано ниже.
Для других способов установки, пожалуйста, обратитесь к официальной странице установки Pngquant.
Сжатие изображений PNG в Linux с помощью Pngquant
Использование Pngquant тривиально и не требует специальных навыков.
В моем текущем каталоге у меня есть файл PNG с именем «ostechnix.png». Позвольте мне показать вам его размер.
Как видите, размер изображения составляет 152 Кб.
Сжатие изображения PNG
Теперь давайте сожмем это изображение, используя команду:
Приведенная выше команда сожмет файл ostechnix.png и сохранит его как новый файл с именем «ostechnix-fs8.png». По умолчанию Pngquant будет использовать имя выходного файла, такое же, как имя входного файла с суффиксом -or8.png или -fs8.png в конце. Это означает, что исходный файл не будет перезаписан. Если вас не устраивает степень сжатия, просто удалите сжатый файл.
Давайте еще раз проверим размер сжатого файла изображения:
Видите? Pngquant уменьшил размер изображения со 152К до 48К. Это действительно хорошая работа. Откройте изображение с помощью любой программы для просмотра изображений и сравните их. Вы не найдете большой разницы в качестве между оригинальным и сжатым изображениями. Оба изображения будут выглядеть почти одинаково!
Отображение сообщений о процессе во время сжатия
По умолчанию Pngquant не будет отображать то, что происходит за кулисами при сжатии изображений. Если вы хотите просмотреть сообщение о состоянии процесса, используйте следующую команду:
Теперь вы увидите прогресс во время сжатия.
Сжатие нескольких изображений PNG
Pngquant также может конвертировать несколько изображений сразу. Следующая команда сжимает picture1.png и picture2.png в текущем рабочем каталоге.
Также мы можем переместить все файлы в каталоге и сжать их за один раз. Например, чтобы преобразовать все изображения в папке с именем «/home/sk/images», выполните:
Изменение суффикса имени выходного файла
Как я уже сказал, имя выходного файла совпадает с именем входного, за исключением того, что оно заканчивается на «-fs8.png», «-or8.png». Однако вы можете изменить суффикс, как вы хотите.
Эта команда сожмет файл ostechnix.png и сохранит его как ostechnixlinux.png.
Отмена сохранения файлов, если размер сжатых файлов превышает размер исходных файлов
Зачем нужно сжатие, если преобразованные файлы больше исходных файлов? Такое преобразование не нужно, поэтому мы можем пропустить его, как показано ниже.
Приведенная выше команда сохранит преобразованный файл, только если он меньше исходного.
Сохранение конвертированных файлов в другом месте
По умолчанию Pngquant сохраняет входные и выходные файлы изображений в одной директории. Если вы хотите сохранить выходной файл в другом месте, команда будет следующей:
Эта команда сожмет ostechnix.png и сохранит его как output.png в каталоге Documents.
Сжатие изображений в нестандартном качестве
Pngquant сжимает изображения в максимально возможной степени. Мы также можем вручную установить качество изображения. Pngquant позволяет нам устанавливать качество изображения в диапазоне от 0 (наихудшее) до 100 (идеальное), используя параметры min и max.
В следующем примере минимальное качество изображения устанавливается равным 60, а максимальное - 80.
Если качество преобразования ниже минимального, изображение не будет сохранено.
Очистка метаданных изображения
Метаданные изображения - это набор данных о нем. Они включают в себя всю информацию об изображении, такую как формат изображения, настройки камеры, DPI, дата и время изображения, заголовок и комментарии, геолокация и многое другое. Обратитесь к приведенной ниже статье, чтобы узнать, как просматривать метаданные изображения.
Если у вам не нужны метаданные, вы можете просто удалить их, используя pngquant, как показано ниже.
Для получения более подробной информации см. справочную страницу pngquant.
Я использую Pngquant уже много лет. Он очень помогает мне сжимать изображения PNG до 70% и более. Если вы ищете оптимизатор изображений PNG, Pngquant может быть хорошим выбором.
Комментариев нет:
Отправить комментарий