Опциональная оптимизация изображений перед загрузкой

Продолжение обсуждения из Оптимизация изображений перед загрузкой?:

Это предложение по обсуждению (RFC) о добровольной сжатии, изменении размера и оптимизации изображений на стороне клиента перед процессом загрузки. Эксперимент будет проводиться с использованием компонента темы. Если он окажется полезным, мы рассмотрим возможность добавления этой функции в ядро для версии 2.8.

Интерфейс

Пользователи смогут управлять оптимизацией на стороне клиента с помощью простого флажка в модальном окне загрузки.

Технология сжатия

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

Наш компонент будет изменять размер загружаемого пользователем изображения, если оно превышает максимальный настроенный размер, и перекодировать его с помощью MozJPEG.

В моих тестах это занимает <10 секунд на среднем Android-смартфоне и сжимает типичное фото до менее чем 30% от его исходного размера.

Результаты

Оригинал

Оптимизировано

Изменено до 50% + оптимизировано

22 лайка

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

Насколько сильно следует оптимизировать изображения перед загрузкой: «незначительно|немного|сильно» …

Имя/значение и значение по умолчанию ещё не определены.

Результаты выглядят превосходно! Также, возможно, стоит сделать это полностью автоматическим в определённых случаях? Вы устанавливаете «максимальный» размер изображений на вашем форуме в 2000 КБ, и у нас есть эвристика, которая срабатывает и гарантирует, что всё будет обработано.

16 лайков

Индикатор прогресса был бы очень полезен здесь в случае загрузки нескольких изображений, чтобы пользователь знал, что что-то происходит.

Да, пожалуйста. Если оставить это на усмотрение пользователей, это будет использоваться эпизодически, а неопытные пользователи не поймут цели.

5 лайков

Инструмент, который мне нравится: 75 быстрых сжатий https://squoosh.app/

1 лайк

Было бы полезно добавить эту функцию как опцию для администратора, чтобы автоматически сжимать всё, что превышает установленные для сайта параметры размеров. Для сайтов с большим количеством изображений не стоит включать её постоянно, но она пригодится в тех случаях, когда менее опытные пользователи не хотят беспокоиться о изменении размера.

3 лайка

Эта функция почти готова, мы сможем протестировать её в ближайшее время:

8 лайков

Пожалуйста, проверьте Testing composer image optimization

2 лайка