Конвертировать HEIC в JPG
Те же четыре режима, что и в приложении для iPhone.
В пикселях. Оставьте пустым, чтобы сохранить исходный размер. Никогда не увеличивает.
В МБ. Оставьте пустым, чтобы сохранить качество выше. Пережимает, пока не уложится, и показывает итоговое качество.
Имя для всей партии; нумерация добавляется сама. Пустое поле сохраняет исходные имена.
Файл ещё не выбран.
Декодер — это WebAssembly, работающий в этой вкладке. Фотография читается с диска в память и никогда не отправляется на сервер.
Все онлайн-конвертеры упираются в одно и то же: браузер не умеет декодировать HEIC, поэтому обычный ответ — отправить вашу фотографию на сервер, который умеет. Этот конвертер идёт другим путём: декодер на WebAssembly плюс кодировщик JPEG, который у браузера уже есть.
| Режим (Q %) | Размер при 4032 × 3024 px (MB) | Сжатие | Точность PSNR (dB) | Глубина (bits) | Время (s) |
|---|---|---|---|---|---|
| HEIC Source | 2.4 MB | 16:1 | Reference (10-bit) | 10 bits | 0.00 s |
| Maximum (Q = 100%) | 5.8 MB | 7:1 | 46.8 dB | 8 bits | 0.21 s |
| High (Q = 85%) | 3.1 MB | 12:1 | 41.2 dB | 8 bits | 0.18 s |
| Balanced (Q = 70%) | 1.8 MB | 21:1 | 38.4 dB | 8 bits | 0.16 s |
| Small (Q = 50%) | 1.1 MB | 35:1 | 34.6 dB | 8 bits | 0.15 s |
Как технически работают декодирование HEIC, сжатие JPG и чтение EXIF?
Техническая формула и метод: ISO/IEC 14496-12 ISO-BMFF (hvc1 10-bit Display P3) → libheif WASM 8-bit sRGB RGBA Canvas (W × H × 4 bytes) → 8×8 DCT JPEG quantization Q ∈ [1, 100] (presets Q = 100%, 85%, 70%, 50%; vs lossless PNG DEFLATE 24-bit reference).
Расчётный пример (фото iPhone 12 MP): 4032 × 3024 px (12.2 MP) iPhone photo: 2.4 MB .heic → 3.1 MB .jpg at Q = 85%, 41.2 dB PSNR, 0.18 s total local decode + encode time (0 bytes uploaded).
Можно ли конвертировать HEIC в JPG, не загружая фотографии?
Сохраняется ли в JPG дата съёмки?
Из браузера — нет. Кодирование через canvas даёт только пиксели, весь EXIF теряется. Дату сохраняет приложение для iPhone, удаляя при этом только геоданные.
Можно задать точный размер файла, например меньше 2 МБ?
Настройки целевого размера нет. Выберите качество, посмотрите результат и снизьте качество или длинную сторону. Уменьшение стороны обычно даёт больше.
Почему JPG получился больше исходного HEIC?
Это нормально. HEIC сжимает заметно эффективнее: та же фотография в JPEG обычно в полтора-два раза тяжелее. Вы меняете размер на совместимость.