Стиснення зображень з живим попереднім переглядом і завантаженням через sharp

Завантажте JPG, PNG, WebP або AVIF і перетягніть повзунок якості — попередній перегляд відображається миттєво у браузері, а фінальний файл перекодовується на сервері за допомогою sharp + libvips для мінімального розміру. Експорт у JPG, WebP, AVIF або PNG. Без реєстрації, без водяного знака.

або перетягніть зображення сюди

RoundCut Compress Image показує живий попередній перегляд у браузері під час переміщення повзунка якості, а потім кодує фінальний файл на сервері за допомогою sharp + libvips — того самого стека, що використовується Vercel, Shopify і Cloudflare. Ваш файл обробляється в ізольованому кеші орендаря, ніколи не використовується для навчання моделей і видаляється після короткого TTL. Порівняйте JPG, WebP та AVIF з першого погляду, виберіть найменший і завантажте.

Що робить цей інструмент

Він бере зображення, яке у вас є, і створює менший варіант. Формати зі втратами (JPG, WebP, AVIF) перекодовуються на вибраному рівні якості — чим нижча якість, тим менший файл, аж до появи видимих артефактів. Ви стежите за живим попереднім переглядом із розділеним екраном і лічильником розміру файлу під час перетягування повзунка, щоб вибрати найнижчу якість, яка все ще виглядає прийнятно. Вихідний файл зберігає точні початкові розміри; щоб зменшити розміри в пікселях, спочатку скористайтеся інструментом Resize.

Як працює конфіденційність у цьому інструменті

Попередній перегляд повзунка відображається локально за допомогою `canvas.toBlob` — кожне коригування, яке ви бачите, обчислюється у браузері без мережевих запитів. Фінальне завантаження відрізняється: коли ви натискаєте «Завантажити», файл передається через HTTPS до нашого сервісу стиснення (Cloudflare Worker → наш сервер на базі Fastify, що запускає sharp + libvips), щоб вихідний файл мав мінімально можливий розмір. Файл зберігається в ізольованому кеші орендаря на короткий TTL (щоб повторне завантаження того самого зображення обслуговувалося з кешу, а не перекодовувалося заново), після чого видаляється. Ми ніколи не використовуємо завантажені файли для навчання моделей, не передаємо їх третім особам, а ключ API для завантаження виключається з наших журналів. Якщо ви хочете не надсилати файл взагалі, живий попередній перегляд повзунка сам є стисненим зображенням — клацніть правою кнопкою, щоб зберегти версію з браузера. Для файлів, що перевищують ліміт завантаження, або якщо наш сервіс недоступний, інструмент автоматично переходить на резервне кодування у браузері.

Що цей інструмент вміє (і що ні)

Безкоштовний: без реєстрації, без реєстрації, без водяного знака, без ліміту на кількість зображень на день. Шлях завантаження потребує мережі — наш сервер виконує фінальне кодування. Якщо мережа недоступна або наш сервіс не відповідає, інструмент автоматично перемикається на кодування у браузері (файл дещо більший, той самий формат). Що він не вміє: не змінює розмір — вхідні розміри дорівнюють вихідним (спочатку скористайтеся інструментом Resize, якщо потрібно перейти від 4000 пікс. до 1200 пікс.). Не зберігає EXIF, GPS або метадані камери — перекодувальники видаляють їх за замовчуванням, що для більшості сценаріїв є перевагою для конфіденційності. Не підтримує пакетну обробку: одне зображення за раз. Немає режиму цільового розміру: переміщайте повзунок і спостерігайте за лічильником байтів — за два-три спроби ви досягнете потрібного розміру. Анімація GIF не зберігається: використовується лише перший кадр.

Живе порівняння форматів — виберіть найменший з першого погляду

Під повзунком якості ви побачите три картки: JPG, WebP та AVIF. Усі вони кодують ваше фото на вибраному рівні якості і показують розмір результуючого файлу по завершенні. Той, що дає найменший файл, отримує зелений значок «Найменший» — клацніть на цю картку, щоб встановити її як вихідний формат, і завантажте. Це відмінність від автоматичних вибірників на кшталт TinyPNG: ви бачите реальні цифри для вашого конкретного зображення, на вашому конкретному рівні якості, перш ніж прийняти рішення. Не потрібно гадати, чи AVIF був би меншим за WebP для цього конкретного фото.

Як це працює: живий попередній перегляд на стороні клієнта, фінальне кодування на сервері

Поки ви перетягуєте повзунок, попередній перегляд відображається за допомогою вбудованого браузерного `canvas.toBlob` — миттєвий зворотний зв'язок, нульовий трафік. Коли ви натискаєте «Завантажити», оригінальний файл надсилається через HTTPS до нашого сервісу стиснення: невеликий Cloudflare Worker переспрямовує запит на сервер Fastify, що запускає sharp 0.34 на основі libvips 8.17. Цей стек дає суттєво менші файли, ніж браузерні кодувальники (зазвичай на 10–15% краще при тій самій візуальній якості, плюс доступ до вихідного JXL і налаштованої субдискретизації кольоровості, яку браузерні API не надають). Закодований результат кешується per-tenant для повторних завантажень, а потім видаляється. Повний час обміну зазвичай становить менше 600 мс для типового фото при хорошому з'єднанні; якщо він перевищує 6 секунд або сервіс недоступний, інструмент автоматично переходить на резервний варіант кодування у браузері.

Виберіть вихідний формат: JPG, WebP, AVIF або PNG

JPG — найбезпечніший вибір для фотографій, призначених для електронної пошти, друку або будь-якого робочого процесу, де новіші формати можуть не підтримуватися — універсальна підтримка, без прозорості. WebP — найкращий стандарт для вебу: зазвичай на 25–35% менший за JPG при тій самій візуальній якості та підтримує прозорість. AVIF стискає ще сильніше — часто на 40–60% менший за JPG — і підтримується в Chrome, Firefox, Safari і Edge. PNG — без втрат, кожен піксель зберігається; повзунок якості для PNG прихований, оскільки немає що втрачати. Типова економія на неоптимізованому PNG: 30–50%, до 70% на нещодавно відрендерених експортах. Шлях завантаження використовує sharp + libvips на нашому сервері (MozJPEG для JPG, libwebp для WebP, libavif/heif для AVIF, libpng для PNG); живий попередній перегляд повзунка використовує вбудовані кодувальники браузера. Для введення інструмент приймає JPG, PNG, WebP та AVIF у всіх сучасних браузерах, а також GIF (лише перший кадр) та HEIC (лише Safari).

Повзунок якості простими словами

Повзунок для форматів зі втратами (JPG, WebP, AVIF) має діапазон від 1 до 100. Вище — менше артефактів стиснення і більший файл. Нижче — менший файл з більш помітною деградацією. 80 — значення за замовчуванням, що відповідає рівню «висока якість» JPEG у Photoshop і використовується більшістю професійних робочих процесів. 60 — надійний стандарт для вебу та електронної пошти, де розмір файлу важливіший за якість друку. Нижче 50 на плавних градієнтах і тонах шкіри починають з'являтися блокові артефакти. Нижче 30 вихідний файл впізнаваний, але явно стиснений — корисний лише для мініатюр. Лічильник розміру над повзунком оновлюється під час перетягування. Він показує точну кількість байтів перекодованого вихідного файлу — виміряну, а не оцінену. Коли перекодований файл більший за завантажений (що трапляється з вже стисненими JPG на якості 100 або PNG, попередньо оптимізованими іншим інструментом), збережене значення стає від'ємним і картка чітко повідомляє: знизьте повзунок або змініть формат.

Часті запитання

Стиснення зображень справді безкоштовне?

Так. Без реєстрації, без водяного знака, без пробного періоду. Попередній перегляд повзунка виконується локально; фінальне завантаження кодується нашим сервером (sharp + libvips). Витрати на інфраструктуру достатньо малі, щоб ми надавали це безкоштовно.

Чи завантажується моє зображення кудись?

Попередній перегляд повзунка обчислюється у браузері — тут немає завантаження. Фінальне завантаження відрізняється: коли ви натискаєте «Завантажити», оригінальний файл надсилається через HTTPS до нашого сервісу стиснення, щоб вихідний файл отримав кодування sharp + libvips (менший, ніж те, що може створити браузер). Файл зберігається в короткочасному ізольованому кеші орендаря, ніколи не використовується для навчання моделей і видаляється після TTL. Якщо мережа недоступна або сервіс не відповідає, інструмент автоматично переходить на версію з кодуванням у браузері; ви також можете клацнути правою кнопкою на живий попередній перегляд, щоб зберегти браузерну версію напряму.

Чи можна стискати файли WebP?

Так. WebP підтримується як вхідний формат у всіх сучасних браузерах. Ви можете стиснути WebP і експортувати його назад як WebP (менший розмір) або конвертувати у JPG чи AVIF.

Які вхідні формати підтримуються?

JPG, PNG, WebP та AVIF у всіх сучасних браузерах. GIF працює в Chrome і Firefox, але зберігається лише перший кадр — анімація не підтримується. HEIC з iPhone працює лише в Safari (Safari має вбудований декодер HEIC); у Chrome або Firefox спочатку конвертуйте HEIC у JPG за допомогою нашого інструменту Convert.

Наскільки менший стане мій файл?

Залежить від вхідного файлу. Типове неоптимізоване фото на якості 80: WebP зазвичай на 25–35% менший за відповідний JPG; AVIF зазвичай на 40–60% менший за JPG. PNG через Oxipng економить 30–50% на неоптимізованих PNG, до 70% на нещодавно відрендерених. Живий лічильник розміру показує точну цифру для вашого файлу ще до завантаження.

Яку якість вибрати?

80, якщо не впевнені — це значення за замовчуванням, що відповідає «високій якості» JPEG у Photoshop. Знизьте до 60 для вебзавантажень, де розмір важливіший за деталі якості друку. Знизьте до 40 лише для мініатюр. Підвищте до 90–100, якщо подальше редагування файлу небажано накопичувати втрати від стиснення.

Чому мій файл стає БІЛЬШИМ на якості 100?

Якість 100 не означає відсутність стиснення — це означає «мінімізувати видимі артефакти». Якщо ваш вхідний файл вже був оптимізованим JPG, перекодування на якості 100 через MozJPEG може дати більший файл, оскільки два кодувальники застосовують різні внутрішні компроміси. Рішення: знизьте повзунок якості, поки лічильник розміру не стане позитивним, або перейдіть на WebP чи AVIF, які стискають менше при тій самій візуальній якості.

Наскільки малим може стати PNG?

Вихідний PNG обробляється через Oxipng, який вибирає кращі параметри фільтрації та deflate, ніж стандартний експорт canvas. Типова економія: 30–50% на неоптимізованих PNG, до 70% на нещодавно відрендерених. Результат залишається без втрат — кожен піксель ідентичний вхідному. Якщо вам потрібен значно менший файл і прозорість не потрібна, WebP на якості 80 зазвичай перевершує будь-який стиснений PNG — спробуйте обидва за допомогою живого порівняння форматів.

Чи змінює стиснення розміри зображення?

Ні. Ширина та висота зберігаються точно. Якщо вам також потрібно зменшити зображення (наприклад, з 4000 пікс. до 1200 пікс. за шириною), спочатку або після скористайтеся інструментом Resize.

Чи збережуться метадані EXIF?

Ні. Перекодований файл очищається від EXIF, GPS і метаданих камери, оскільки обидва шляхи кодування (попередній перегляд у браузері і серверне завантаження) видаляють вихідні метадані за замовчуванням. Для більшості користувачів це перевага для конфіденційності (у файлі не зберігаються координати GPS), але якщо вам потрібно зберегти метадані, цей інструмент не підходить.

Чи можна стискати багато файлів одночасно?

Поки що ні — одне зображення за раз. Додавайте їх по одному: кожна операція займає значно менше секунди для JPG і WebP, кілька секунд для AVIF при першому кодуванні.

Чи підтримується AVIF скрізь?

Кодування: так — шлях завантаження використовує libavif на нашому сервері, тому вихідний файл AVIF працює незалежно від того, чи є у браузері вбудований кодувальник AVIF. Перегляд вихідного файлу: Chrome, Firefox, Safari і Edge підтримують AVIF. Якщо ви надсилаєте файл конкретному одержувачу, спочатку перевірте; WebP є більш безпечним універсальним вибором.

Яке найбільше зображення може обробити цей інструмент?

Жорсткого ліміту немає — все залежить від оперативної пам'яті вашого пристрою. Сучасний ноутбук обробляє 50-мегапіксельні фотографії за секунду-дві. Дуже великі файли (вхідні файли понад ~200 МБ) можуть вичерпати пам'ять на телефонах — якщо це ваша ситуація, спочатку зменшіть розмір.