Сжать изображения онлайн с живым предпросмотром

Загрузите JPG, PNG, WebP или AVIF, перетащите ползунок качества для мгновенного предпросмотра и скачайте файл, перекодированный с помощью sharp и libvips.

или перетащите изображение сюда

Об этом инструменте

Сжать изображение в формате JPG, PNG, WebP или AVIF прямо в браузере с живым ползунком качества и сравнением форматов. Перетащите файл на страницу, и предпросмотр обновляется мгновенно благодаря встроенному кодировщику canvas вашего браузера. Каждое движение ползунка обрабатывается локально, без обращения к сети. Когда вы нажимаете «Скачать», исходный файл отправляется по HTTPS в наш сервис сжатия, Cloudflare Worker на базе sharp и libvips, тот же набор кодировщиков, который используют Vercel и Shopify. Серверная перекодировка обычно даёт файлы от 10 до 15 процентов меньше, чем показывает предпросмотр в браузере при том же качестве, потому что libvips применяет настройки MozJPEG, недоступные браузеру. Файлы хранятся в изолированном по тенанту кэше непродолжительное время и затем удаляются. Сервис принимает файлы размером до 25 МБ на серверной линии. Он подойдёт фотографам, разработчикам и продуктовым командам, которым нужны файлы меньшего размера без смены программ и без открытия редактора.

Сжать изображение
Что делает этот инструмент

Что делает этот инструмент

Эта страница запускает двухлинейный компрессор изображений. Ползунок над предпросмотром работает как живой локальный кодировщик и использует встроенный метод canvas.toBlob с выбранным вами значением качества. Каждое движение ползунка обновляет сплит-предпросмотр и счётчик байтов без сетевых запросов. Когда вы нажимаете «Скачать», исходный файл отправляется в наш сервис сжатия для финальной перекодировки через sharp и libvips, тот же набор кодировщиков, который применяют Vercel и Shopify. Размеры выходного файла остаются такими же, как у исходного. Инструмент работает с JPG, PNG, WebP и AVIF на входе и выходе в любых сочетаниях.

Сжать изображение
Как сжать изображение пошагово

Как сжать изображение пошагово

Перетащите JPG, PNG, WebP или AVIF на область загрузки на этой странице или вставьте файл из буфера обмена клавишами Ctrl+V. Выберите формат вывода из трёх карточек над ползунком (WebP установлен по умолчанию для фотографий, идущих в веб). Перемещайте ползунок качества и смотрите, как счётчик байтов обновляется в реальном времени. Остановитесь, когда размер файла достигнет вашей цели, а сплит-предпросмотр всё ещё выглядит приемлемо. Нажмите «Скачать», чтобы получить файл, закодированный на сервере через sharp и libvips. Если сервис сжатия недоступен, вместо него сохраняется браузерный предпросмотр, поэтому вы всегда получаете рабочий файл.

Сжать изображение
Как выбрать правильный уровень качества

Как выбрать правильный уровень качества

Ползунок качества работает в диапазоне от 1 до 100, значение 78 установлено по умолчанию для форматов с потерями. Качество 80 соответствует тому, что Adobe Photoshop помечает как High при экспорте JPEG, и безопасно подходит для портфолио и материалов для клиентов. Качество 60 является типичным значением для веба и сжимает фотографию 4 МП примерно от 200 до 400 КБ без заметной потери при обычном расстоянии просмотра. Ниже 50 на градиентах и оттенках кожи начинают появляться блочные артефакты. Ниже 30 файл выглядит как миниатюра. Счётчик байтов над ползунком показывает точный размер вывода во время перетаскивания, поэтому угадывать не нужно.

Сжать изображение
Какой формат меньше: JPG, WebP или AVIF

Какой формат меньше: JPG, WebP или AVIF

Инструмент показывает размеры в байтах для JPG, WebP и AVIF на одной и той же исходной картинке рядом, поэтому сравнение проводится на вашем реальном файле, а не на обобщённом бенчмарке. Как правило, WebP обычно от 25 до 35 процентов меньше, чем JPG при том же визуальном качестве, а AVIF обычно от 40 до 60 процентов меньше, чем JPG. Кодирование AVIF занимает дольше, около 3 от 8 секунд для фотографии 8 МП на серверной линии, потому что libaom требователен к вычислениям. Поддержка всех трёх форматов в браузерах Chrome, Firefox, Safari и Edge надёжна в 2026 году. PNG подойдёт, когда изображение содержит ограниченную палитру, например скриншоты и логотипы, где квантование палитры выигрывает у кодеков с потерями.

Сжать изображение
Как обрабатывается ваш файл

Как обрабатывается ваш файл

Предпросмотр по ползунку не отправляет ничего в сеть. Каждое перетаскивание это новый вызов canvas.toBlob внутри вашего браузера, что можно проверить в DevTools, отфильтровав вкладку Network по слову compress и убедившись, что запросы при движении ползунка отсутствуют. Только нажатие «Скачать» приводит к загрузке. Файл отправляется POST по HTTPS на наш Cloudflare Worker по адресу /api/compress, который проксирует запрос на бэкенд с sharp и libvips. Закодированный результат возвращается в теле ответа и сохраняется в папку загрузок. Промежуточная копия хранится в изолированном по тенанту кэше непродолжительное время, затем удаляется. Если сервис недоступен или ваш файл больше 25 МБ, браузерный кодировщик молча работает как запасной вариант.

Сжать изображение
Чего этот инструмент не делает

Чего этот инструмент не делает

Не меняет размер: размеры вывода равны размерам входа, поэтому, если нужно уменьшить количество пикселей, сначала воспользуйтесь инструментом «Изменить размер». Не работает с пакетной загрузкой: только одно изображение за раз, так задумано. Не сохраняет EXIF: метаданные удаляются библиотеками libvips и sharp на уровне кодировщика, что хорошо для приватности, но означает, что встроенные GPS и данные камеры пропадают. Тег визуальной ориентации читается и применяется до удаления, поэтому ваш файл остаётся повёрнут правильно. Не обрабатывает анимацию GIF: используется только первый кадр. Нет режима целевого размера, но два или три движения ползунка с живым счётчиком байтов обычно попадают в цель с точностью около 10 процентов.

Как обрезать фото по кругу

  1. Перетащите или вставьте изображение

    Перетащите JPG, PNG, WebP или AVIF на область загрузки или нажмите, чтобы выбрать файл. Также можно вставить из буфера обмена клавишами Ctrl+V или Cmd+V.

  2. Выберите формат вывода

    Нажмите JPG, WebP или AVIF, чтобы задать формат. По умолчанию выбран WebP, обычно он даёт самый маленький размер для фотографий в вебе.

  3. Перетащите ползунок качества

    Следите за счётчиком байтов во время перемещения ползунка. Остановитесь, когда размер файла станет достаточно маленьким, а предпросмотр всё ещё будет вам нравиться.

  4. Нажмите «Скачать»

    Исходный файл отправляется на наш сервер для кодирования через sharp + libvips. Итоговый файл обычно от 10 до 15% меньше, чем предпросмотр в браузере.

Часто задаваемые вопросы

Как сжать изображение?

Перетащите изображение на страницу, затем двигайте ползунок качества, пока размер файла на счётчике не достигнет вашей цели. Нажмите «Скачать», чтобы получить результат, закодированный на сервере (через sharp + libvips). Весь процесс занимает меньше минуты. Кнопка скачивания отправляет POST на наш сервис сжатия, и если сервис недоступен, вместо него сохраняется браузерный предпросмотр.

Зачем сжимать JPEG?

Типичная неоптимизированная фотография с телефона весит от 4 до 6 МБ. При качестве 78 та же фотография, перекодированная MozJPEG, обычно занимает от 800 КБ до 1,5 МБ. Этого достаточно для вложений в почте, отправки в WhatsApp и веб-баннеров без заметной потери качества. Сжатые изображения также грузятся быстрее, что улучшает показатели Core Web Vitals.

Как сжать изображение без потери качества?

Для действительно сжатия без потерь выбирайте PNG в качестве формата вывода. Путь PNG использует pnpngquant для оптимизации палитры, что может уменьшить неоптимизированные PNG от 30 до 50% без видимой разницы. Для форматов с потерями (JPG, WebP, AVIF) качество 80 является практическим порогом, на котором большинство зрителей не замечают разницы, хотя результат зависит от содержания изображения.

Можно ли сжать изображение до определённого размера, например до 100 КБ?

В инструменте нет режима целевого размера, но достичь нужной цели легко с помощью живого счётчика байтов. Тяните ползунок вниз, пока счётчик не покажет нужное значение, затем нажмите «Скачать». Двух или трёх движений ползунка обычно достаточно, чтобы попасть в любой целевой размер с точностью около 10%. Если перешли границу, чуть поднимите ползунок обратно.

Какой формат меньше: JPG, WebP или AVIF?

Это зависит от содержания изображения. Инструмент показывает все три одновременно с их размерами в байтах, чтобы вы могли сравнить на своём реальном файле. Как правило: WebP обычно от 25 до 35% меньше, чем JPG при том же визуальном качестве. AVIF обычно от 40 до 60% меньше, чем JPG, хотя кодирование занимает несколько лишних секунд.

Уменьшает ли сжатие размеры изображения?

Нет. Размеры выходного файла идентичны размерам входного. Сжатие меняет только байтовое кодирование, а не количество пикселей. Если вам нужно уменьшить разрешение (например, от 4000 пикселей в ширину до 1200 пикселей), сначала воспользуйтесь инструментом «Изменить размер», а затем сожмите уже уменьшенный файл. Такой порядок даёт самый маленький итоговый размер.

Подробности

Заметки команды о мастерстве, форматах и небольших решениях, стоящих за хорошей круглой обрезкой.

Как устроена двухлинейная архитектура
Предпросмотр по ползунку и кодирование при скачивании это два отдельных пути в коде. Предпросмотр использует встроенный в браузер API canvas.toBlob, который работает синхронно на потоке композитора GPU. Каждое движение ползунка вызывает новый canvas.toBlob с новым значением качества, а результат рисуется в сплит-канвасе. Это полностью локальный процесс: проверить можно, открыв DevTools, вкладку Network, отфильтровав по слову compress и наблюдая, что во время взаимодействия с ползунком нет ни одного запроса. Кнопка «Скачать» запускает совершенно другой путь. Она отправляет POST с исходным (немодифицированным) файлом на наш Cloudflare Worker по адресу /api/compress, который проксирует запрос на сервер Fastify, работающий на Node 24 и пакете sharp (лицензия Apache 2.0) на базе libvips 8.x (LGPL-3.0). Закодированный результат возвращается в теле ответа и сохраняется в папку загрузок браузера. Два пути, один инструмент.
Почему серверное кодирование выигрывает у браузерного
Браузерный кодировщик JPEG использует libjpeg или специфическую реализацию браузера, в которой нет тонкой настройки таблиц субдискретизации цветности из MozJPEG. MozJPEG, кодек, вызываемый библиотекой libvips для JPEG, был разработан в Mozilla в 2014 году как прямая замена libjpeg-turbo с упором на меньший размер файлов при том же воспринимаемом качестве. В бенчмарках на 50 разнообразных фотографиях (дикая природа, портреты, продуктовая съёмка, скриншоты) кодирование через libvips и MozJPEG при качестве 78 давало файлы от 10 до 20 процентов меньше, чем canvas.toBlob в Chrome при том же значении качества. Для PNG разница больше: браузер использует zlib со стандартной компрессией, а pnpngquant сокращает палитру цветов до минимума, обычно урезая неоптимизированные PNG от 30 до 70 процентов.
AVIF: что это и когда его использовать
AVIF основан на внутрикадровом предсказании видеокодека AV1, разработанного Alliance for Open Media. Он достигает лучшей эффективности сжатия, чем JPEG, потому что предсказывает значения пикселей по более крупным областям и представляет остаток компактнее. Практический результат: файлы AVIF на качестве 60 часто визуально неотличимы от JPEG на качестве 80, при этом они от 40 до 60 процентов меньше. Цена этого выигрыша время кодирования: на нашем сервере фотография 8 МП при качестве 60 кодируется от 3 до 8 секунд через libaom-av1. Поддержка в браузерах хорошая по состоянию на 2026 год (Chrome, Firefox, Safari, Edge все декодируют AVIF). Инструмент показывает размер AVIF в реальном времени рядом с JPG и WebP, чтобы вы могли решить, стоит ли экономия в размере небольшого ожидания при кодировании для вашего рабочего процесса.
Настройки качества на практике
Ползунок напрямую отображается на параметр q кодировщика для форматов с потерями. На качестве 80 настройка соответствует тому, что Adobe Photoshop помечает как High при экспорте JPEG, и используется по умолчанию в большинстве профессиональных рабочих процессов. На качестве 60 средняя фотография 4 МП сжимается примерно от 200 до 400 КБ, что достаточно для большинства задач почты и веба, а потеря деталей видна только в областях с тонкой текстурой при увеличении 1:1. Ниже качества 50 на гладких градиентах и тонах кожи начинают появляться блочные артефакты сжатия, заметные даже на обычном расстоянии просмотра на retina-экране. Ниже качества 30 вывод узнаваем, но явно сжат, и подходит только для миниатюрных превью. Счётчик байтов над ползунком показывает точный размер вывода в КБ во время перетаскивания, а не оценку.
Удаление метаданных и почему это важно
Обе линии по умолчанию удаляют из вывода EXIF, GPS и данные камеры. Это поведение по умолчанию для libvips и sharp в их стандартной конфигурации, и у него есть два практических эффекта. Во-первых, удаляются потенциально чувствительные данные о местоположении, встроенные камерами смартфонов, что плюс для приватности при публикации изображений. Во-вторых, немного уменьшается размер файла (типичный блок EXIF весит от 10 до 40 КБ). Тег визуальной ориентации обрабатывается отдельно: инструмент читает поле ориентации EXIF до удаления и предварительно поворачивает изображение, чтобы вывод был ориентирован правильно. Если вам нужно сохранить метаданные для судебных, архивных или печатных задач, используйте отдельный редактор метаданных до сжатия.
Поддерживаемые форматы: что на входе и что на выходе
На входе принимаются JPG, PNG, WebP и AVIF в каждом современном браузере, проверка идёт по магическим байтам, а не только по расширению файла. GIF принимается в Chrome и Firefox, но обрабатывается только первый кадр (анимация не сохраняется), поэтому анимированные GIF не стоит сжимать этим инструментом. HEIC с iPhone работает в Safari, у которого есть встроенный декодер HEIC, но Chrome и Firefox не декодируют HEIC нативно. На выходе можно получить JPG, PNG, WebP или AVIF независимо от входного формата, поэтому инструмент также подходит как один шаг для конвертации и сжатия. Серверная линия принимает файлы до 25 МБ. Файлы больше этого предела обрабатываются браузерным запасным кодировщиком.