TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Mithgol the Webmaster

24 Jul 2020, 21:44

Открыть в Telegram Поделиться Пожаловаться

Между двумя крайностями, упомянутыми в предшествующем сообщении: OptiPNG и ZopfliPNG — существует и нѣкая золотая середина. Вчера (23 июля) я натолкнулся на её упоминание, когда читал обсуждение правил пересжатия изображений Твиттером (и правил отказа от такого пересжатия тогда, когда сам микроблоггер достаточно оптимизировал файл перед публикацией): оказалось, что Нолан О'Брайен (представитель Твиттера в этом обсуждении) 30 января прошлого (2019) года, рассуждая о возможностях сжатия PNG без потерь (об алгоритмах, доступных микроблоггерам, но работающих слишком долго для употребления самим Твиттером на стороне сервера), упомянул («через запятую», как говорится) не только OptiPNG, но и oxipng — выпускаемую много лѣтъ утилиту (её версия 0.1.0 появилась в марте 2016 г.), в которую на первом же году её жизни (в декабре 2016 г.) была добавлена поддержка Zopfli.

Ѿдѣльно ѿмѣчу, что я мог бы, навѣрное, натолкнуться на упоминание oxipng и в том случае, если бы перечитывал статью англоязычной Википедии о Zopfli после 5 августа прошлого (2019) года (когда такое упоминание было туда добавлено).

Кроме ужé упомянутой поддержки Zopfli, оптимизатор oxipng также радует и признанием автора в том, что oxipng создавался съ цѣлью повторить и улучшить успѣхъ OptiPNG (а значит, можно ожидать всѣ возможности, по OptiPNG привычныя), и что oxipng работает многопоточно (так что различные варианты фильтрации PNG перебираются не последовательно, а параллельно).

Там, гдѣ OptiPNG, если работает в режиме предѣльнаго сжатия, послѣдовательно перебирает для каждого из шести вариантов фильтрации PNG ещё по 180 вариантов работы zlib — там oxipng в режиме Zopfli параллельно пробует всѣ шесть вариантов, и притом для каждого из них просто запускает сжатие Zopfli (которое работает медленнѣе, чѣмъ zlib, но всё же не в 180 же раз медленнѣе!). Нетрудно сосчитать, что этим обеспечивается выигрыш по времени примѣрно на порядок в многопоточном режиме, и даже при необходимости отключения многопоточности (напримѣръ, при параллельной обработке многих файлов на немногих ядрах процессора) можно ожидать выигрыш болѣе чѣмъ в два раза.

По правде сказать, у oxipng всё же есть одно неприятное отличие от OptiPNG по возможностям (то же сáмое, за которое я был недоволен и ZopfliPNG, о чём упоминал в Твиттере в ноябре прошлого года): нѣтъ такого параметра в настройках, который позволил бы сохранять неизмѣнными дату и время модификации файла, оптимизируемого oxipng. (Однако же явный выигрыш в скорости работы стóит того, чтобы потрудиться и соорудить вокруг oxipng пакетный файл, запускающий команду clonefiletime утилиты NirCmd перед удалением исходного PNG.)

Натравив oxipng (в режиме Zopfli) на мою многотысячефайловую коллекцию PNG, въ извѣстной мѣрѣ ужé преизрядно обработанную OptiPNG за послѣдніе годы, я обнаружил, что объёмы файлов с художественною информациею: кадры из аниме, страницы манги, скриншоты визуальных романов — сжимаются oxipng на нѣсколько процентов сильнѣе, чѣмъ въ OptiPNG, и в среднем даже сильнѣе по сравнению с теми полутора процентами, которые австралийский «Лайфхакер» наблюдал при работе с текстовыми данными, а не графическими. То есть и 2%, и 3%, и 4%, и 5%, и 6%, и 7%, и даже 8% время от времени (в зависимости от содержимого) я увидал достигаемыми, а меньше 2% также получалось — но рѣже, чѣмъ больше 2%. Сжатие же файлов PNG, содержащих фрагменты текстовых страниц: страниц книг, страниц сайтов, словесных реплик на имиджбордах или в иных обсуждениях или блогозаписях (в социальных сетях, напримѣръ) — оказалось ещё болѣе впечатляющим: при работе над ними экономия объёма файла, приносимая oxipng, систематически превосходит 10% (и это, напоминаю, при оптимизации файлов, до этого ужé обработанных в OptiPNG). По-видимому, достоинства Zopfli особенно эффективны по отношению к графическим файлам, состоящим прежде всего из крупных однотонных областей (областей фона страницы), и менее крупных однотонных же контуров (букв страницы), и небольших узких областей промежуточных цвѣтовъ, порождаемых сглаживанием.

Я рад видѣть это. Впредь я буду использовать именно oxipng.

123 1 3
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot