Туториалы

Как отучить Chrome сохранять картинки в WebP

koboshiCo-founder
·4 мин чтения
Кратко

Chrome выбирает WebP не назло — сайт прислал только WebP, и Chrome сохранил то, что получил. Разбираем, как в этом виновато согласование контента, как проверить это в DevTools, и даём четыре практичных решения по нарастанию усилий.

В этом руководстве используется бесплатный инструмент Пакетное конвертирование WebP в JPG — он работает прямо в вашем браузере.Открыть инструмент

Chrome сохраняет картинки как .webp, потому что сайт отправил именно их. Когда вы жмёте правой кнопкой и «Сохранить изображение как», Chrome ничего не конвертирует — он пишет на диск ровно те байты, что прислал сервер, а сервер прислал WebP. Скрытой настройки Chrome, которая это вызывает, не существует, поэтому вы и не можете найти, что отключить. Самое быстрое решение — сохранить и сконвертировать: наш конвертер WebP в JPG работает в вашем браузере, ничего никуда не загружается, и сохранённый WebP становится обычным JPG за секунды. Если хотите понять, почему это началось, или остановить проблему ближе к источнику — читайте дальше.

Почему Chrome сохраняет WebP: согласование контента

Каждый раз, запрашивая картинку, браузер прикрепляет заголовок Accept со списком форматов, которые он умеет декодировать. Современный Chrome шлёт что-то вроде image/avif,image/webp,image/png,... — открытое приглашение. Сервер смотрит на список, видит, что WebP welcome, и отправляет WebP, потому что это самый маленький файл из разрешённых. Сайты делают это намеренно: WebP режет их трафик на картинки на четверть и больше (о рождении WebP объясняет, зачем Google его для этого и построила).

Старые версии того же танца отправляли JPEG, потому что только его браузеры и декларировали. В «Сохранить изображение как» ничего не менялось — пункт меню всегда сохранял то, что приходило. Изменилось то, что приходит. И механизм уже повторяется: Chrome также декларирует поддержку AVIF, так что на некоторых сайтах сохраняемый файл теперь .avif — новее, меньше и ещё хуже поддерживается вне браузеров, чем WebP.

Это можно наблюдать вживую. Откройте DevTools (F12), перейдите на вкладку Network, перезагрузите страницу, кликните по запросу картинки и посмотрите заголовки ответа. Там будет content-type: image/webp. Файл был WebP задолго до того, как попал в вашу папку загрузок.

Решение 1: сохранить, потом конвертировать (надёжное)

Сохраните WebP, перетащите в конвертер WebP в JPG, скачайте JPG. Весь цикл занимает пару секунд, работает на любом сайте без исключений и — поскольку конвертация локальная — никогда не отправляет ваш файл на чужие серверы. Накопилась целая папка сохранённых WebP? Перетащите все разом и заберите результаты одним ZIP. Полная инструкция — в статье как конвертировать WebP в JPG.

Если у картинки прозрачный фон, который нужно сохранить, возьмите конвертер WebP в PNG — JPG «приклеит» прозрачность к белому.

Это решение, которое путешествует с файлом: JPG откроется у любого, кому вы его перешлёте, а это важнее, чем кажется, — почему WebP-файлы не открываются самая частая последующая проблема.

Решение 2: подправить URL (работает на некоторых CDN)

Многие CDN картинок решают формат по URL. Откройте картинку в новой вкладке: если адрес заканчивается на .webp, попробуйте поменять на .jpg или .png и перезагрузить. Некоторые CDN — особенно перекодирующие на лету — радостно пережмут и отдадут запрошенный формат; некоторые принимают и query-параметр вроде ?format=jpg. Другие отвечают 404, потому что WebP-файл — единственный существующий.

Трёх секунд на попытку стоит. Строить на этом рабочий процесс — не стоит.

Решение 3: заставить Chrome не просить WebP (всё более хрупкое)

Раз сервер следует заголовку Accept, теоретически Chrome можно перестать декларировать поддержку WebP. На практике пути сузились. Расширения вроде «Save image as PNG» идут более дружелюбным путём: они перехватывают загрузку и конвертируют в PNG автоматически, так что файл падает на диск уже сконвертированным. Расширения, переписывающие заголовок Accept, тоже есть, но часть сайтов пропускает согласование целиком и жёстко отдаёт .webp-URL — никакой трюк с заголовками этого не меняет. А всё, что трогает заголовки запросов, тихо ломается, когда Chrome обновляет правила для расширений.

Если идёте этим путём, проверьте его на конкретном нужном сайте, прежде чем доверять.

Решение 4: скриншот (последнее средство)

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

Глубинная причина всего этого в том, что WebP для сайтов искренне лучше, поэтому предложение WebP-файлов будет только расти — а из-за той же дыры в поддержке загрузка WebP отвергается старыми формами. Пока остальной десктоп не догнал, держите конвертер в одной вкладке от себя: сохранили картинку, перетащили внутрь, пошли дальше по своим делам.

Готовы попробовать?

Бесплатно и без ограничений. Никаких загрузок и регистрации — ваши файлы не покидают устройство.

Открыть Пакетное конвертирование WebP в JPG

Ещё посты в блоге