Нет. Конвертация JPG в PNG не делает фон прозрачным. В JPG никогда не было прозрачности — формат не умеет её хранить, — так что конвертации нечего восстанавливать. На выходе то же изображение в другом контейнере: те же пиксели, тот же непрозрачный фон, больший размер файла. Это честный ответ. Остальная часть статьи объясняет, почему миф существует, для чего конвертация JPG в PNG действительно нужна и как получить по-настоящему прозрачный фон.
Почему конвертация не может создать прозрачность
Прозрачность в файле изображения живёт в четвёртом канале — альфа, рядом с красным, зелёным и синим. У PNG он есть. У JPG нет — и никогда не было. JPEG проектировали для фотографий в начале 1990-х (о рождении PNG рассказывает, почему PNG позже добавил то, чего JPEG не хватало), а у фотографий нет прозрачных частей, поэтому альфу просто оставили за бортом формата.
Отсюда следствие, о которое все спотыкаются: когда JPG показывает белый фон, эта белизна — не метаданные со словом «фон». Это настоящие белые пиксели, запечённые в изображение, неотличимые от белых пикселей, которые часть объекта. Конвертация в PNG добавляет альфа-канал, но каждый пиксель приходит полностью непрозрачным, потому что больше JPG ничего дать не мог. Информация, которая вам нужна, никогда не сохранялась. Ни один конвертер не может её выдумать — тот же принцип, по которому lossless-конвертация не возвращает потерянные детали, разобран в нашей статье о сжатии с потерями и без.
Так почему миф жив? Отчасти потому, что некоторые инструменты действительно рекламируют «JPG в прозрачный PNG» — но присмотритесь: это удаляльщики фона, а не конвертеры. Они угадывают, что беловатые пиксели — фон, и стирают их. Это работает, когда фон чисто белый, а объект — нет. Скормите такому инструменту белый товар на белом фоне, и он радостно съест товар. Разница важна: конвертация переносит пиксели между контейнерами; удаление фона их переписывает.
Что конвертация JPG в PNG делает на самом деле
Так зачем вообще существует конвертация JPG в PNG? Потому что она решает настоящие задачи — просто не задачу прозрачности:
Она останавливает потери поколений. JPG пережимает при каждом сохранении. Отредактируйте JPG десять раз — и он заметно сгниёт. Сконвертируйте в PNG один раз, и каждое сохранение после этого без потерь — пиксели перестают деградировать. PNG становится рабочим файлом; JPG — финальным экспортом.
Она устраивает софт, который требует PNG. Некоторые инструменты, пайплайны и формы загрузки принимают только PNG. Конвертация проводит ваш JPG через дверь.
Она точно фиксирует текущее состояние. PNG хранит сегодняшние пиксели бит в бит. Ничего не добавляется, ничего не теряется. Это стоит сделать до сессии редактирования, а не после.
Конвертация работает локально в вашем браузере: перетащили файлы, скачали PNG, ничего никуда не загружается.
Как по-настоящему получить прозрачный фон
Если цель — прозрачный фон, конвертация формата никогда не была тем инструментом. Настоящие пути:
Удалите фон. Вырезание объекта из фона — функцией удаления фона в редакторе, онлайн-сервисом или аккуратной маской — это отдельная от конвертации задача. Инструмент анализирует пиксели, решает, что объект, а что фон, и записывает альфа-значения там, где был фон. Сделайте это сначала, потом сохраните как PNG.
Начните с источника, где альфа есть. Если изображение существует как файл логотипа, экспорт из редактора или набор стикеров, найдите оригинал. Всё, что экспортировано из дизайн-софта как PNG или WebP, уже несёт прозрачность, и конвертация таких файлов между форматами с альфой сохраняет её идеально.
Перепэкспортируйте из исходного проекта. Если изображение делали вы, вернитесь в редактор и экспортируйте как PNG вместо JPG. Прозрачность была там всё время; её выбросил именно экспорт в JPG.
Когда PNG всё равно правильная цель
Ничто из этого не значит, что JPG в PNG бессмысленен, — это значит, что это ход в рабочем процессе, а не фокус. Конвертируйте, когда изображение идёт в редактирование, когда инструмент отвергает JPG или когда хотите заморозить текущее качество, пока новые сохранения его не обгрызли. Полное сравнение двух форматов — в статье JPG против PNG, а если назначение — сайт, WebP против PNG разбирает более новый вариант, умеющий и фото, и прозрачность.
В обратную сторону PNG в JPG намеренно «приклеивает» прозрачность к белому фону — ровно то, что нужно перед отправкой фото по почте или загрузкой в форму, требующую JPG. Хотя бы в эту сторону все знают, что происходит с альфа-каналом.
Если вашему JPG нужно просто пережить сессию редактирования без потерь: перетащите его в конвертер — и он вернётся PNG с каждым пикселем на месте, включая фон, ровно таким же непрозрачным, каким он был всегда.