🔤

Конвертер изображений в Base64

Перетащите любой JPG, PNG, WebP, GIF, SVG или BMP и получите готовый к копированию Base64 Data URL — плюс заранее отформатированные сниппеты для CSS, HTML, Markdown и JSON. 100% в вашем браузере.

Перетащите изображение сюда или нажмите для выбора

Любой формат изображений. До 30 файлов за раз.

Или нажмите Ctrl/Cmd+V, чтобы вставить из буфера обмена

7 форматов вывода

Raw, Data URI, HTML <img>, фон CSS, Markdown, JSON и строка JS — всё из одной загрузки.

📋

Вставка из буфера обмена

Нажмите Ctrl/Cmd+V, чтобы мгновенно закодировать скриншот — сохранять файл не нужно.

🛡️

Ноль загрузок

FileReader API обрабатывает всё локально. Ваши изображения никогда не покидают устройство.

♾️

Без лимитов на файлы

Ограничено только оперативной памятью устройства. Протестировано на файлах 100 МБ+ на ноутбуке с 16 ГБ.

Что такое кодирование изображений в Base64?

Кодирование изображения в Base64 преобразует двоичные байты файла изображения в ASCII-строку с помощью 64 печатаемых символов. Результат можно встроить прямо в HTML, CSS, JavaScript, JSON или Markdown везде, где требуется текстовое представление, избавляясь от необходимости в отдельном файле изображения или HTTP-запросе.

Чаще всего закодированные данные оборачиваются в Data URI по формату data:image/png;base64,<payload>. Это определено в RFC 2397, а сам алфавит Base64 описан в RFC 4648.

Один важный факт, который стоит знать разработчикам: закодированные в Base64 изображения примерно на 33% больше исходного двоичного файла. Это математически неизбежно — каждые 3 байта двоичных данных превращаются в 4 ASCII-символа. Важны эти накладные расходы или нет — целиком зависит от контекста, о чём мы расскажем ниже.

Когда использовать Base64 (а когда НЕ стоит)

Большинство онлайн-руководств упрощают встраивание Base64 до «всегда хорошо» или «всегда плохо». На деле всё зависит от контекста. Вот матрица решений, которую мы используем в продакшен-коде:

СценарийИспользовать Base64?Причина
Подпись в письме со встроенным логотипом✅ ОбязательноМногие почтовые клиенты блокируют внешние ссылки на изображения
Иконка до 2 КБ в критическом CSS✅ РекомендуетсяЭкономит один round-trip; выигрыш > 33% затрат на размер
Однофайловое HTML-демо / баг-репорт✅ РекомендуетсяСамодостаточно, без внешних зависимостей
Ресурсы заставки Service Worker / PWA✅ ИногдаИзбегает гонки ресурсов при установке SW
Тестовые фикстуры в юнит-тестах✅ РекомендуетсяТесты остаются самодостаточными и читаемыми
Изображение > 10 КБ в CSS или HTML❌ АнтипаттернБлокирует критический путь рендеринга; не кэшируется отдельно
Любое изображение в среде HTTP/2❌ Обычно плохоМультиплексирование HTTP/2 уже снимает накладные расходы на запрос
SVG в фоне CSS❌ АнтипаттернURL-кодированный SVG меньше и управляется через CSS
Встраивание Base64 меняет рост размера файла на 33% на один HTTP-запрос меньше. После того как HTTP/2 стал массовым в 2015 году, этот размен редко оправдывается выше ~2 КБ.

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

Наш бесплатный конвертер изображений в Base64 работает полностью в вашем браузере через FileReader API. Ни один файл не загружается — убедитесь сами во вкладке «Сеть» вашего браузера, пока инструмент работает.

1

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

Перетащите файл, нажмите для выбора или нажмите Ctrl/⌘+V, чтобы вставить скриншот из буфера обмена.

2

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

Переключайтесь между Raw, Data URI, HTML, CSS, Markdown, JSON или строкой JavaScript.

3

Скопируйте или скачайте

Копирование в буфер в один клик или скачивание закодированного текста как .txt-файла.

4

Проверьте в своём коде

Вставьте в свой HTML, CSS или React-компонент. Data URL отображается нативно в любом современном браузере.

7 способов использовать вывод Base64

Один и тот же набор данных Base64 закрывает семь разных продакшен-сценариев. Каждая вкладка в нашем инструменте выдаёт готовый к копированию сниппет в нужном вам формате.

Подпись в письме

Встройте логотип, чтобы он отображался в Outlook, Gmail и Apple Mail без внешней загрузки.

<img src="data:image/png;base64,iVBOR..." alt="Logo" />

Фон CSS

Встройте иконки до 2 КБ, чтобы убрать один HTTP round-trip в критическом CSS.

background: url("data:image/svg+xml;base64,PHN2..")

Превью в React

Показывайте предпросмотр загрузки до отправки файла на сервер.

<img src={`data:image/jpeg;base64,${b64}`} />

Баг-репорт в Markdown

Самодостаточный markdown для issue на GitHub — без битых ссылок на изображения со временем.

![Screenshot](data:image/png;base64,iVBOR...)

JSON API

Передавайте изображения в структурированном JSON, когда схема допускает только текстовые поля.

{ "image": "data:image/png;base64,..." }

Константа JavaScript

Встройте ресурсы прямо в сборку для нулевой загрузки ресурсов во время выполнения.

const logo = "data:image/png;base64,...";

TinyImagePro против других инструментов «изображение в Base64»

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

ИнструментВ браузереЛимит файлаФорматы выводаРеальный FAQ
TinyImageProОграничен ОЗУ7✅ 8 вопросов
base64.guru❌ загружает50 МБ10
base64-image.de1 МБ2Частично
browserlingНе указан1
jam.dev4 МБ3
codebeautifyНе указан1

Для конфиденциального содержимого (медицинские снимки, внутренние макеты продуктов, черновики логотипов) конвертация в браузере — единственный вариант. Лимит base64.guru в 50 МБ впечатляет, но не имеет значения, если вы вообще не можете загрузить файл.

Производительность и лучшие практики

Цифра в 33% накладных расходов Base64 вводит в заблуждение больше разработчиков, чем любой другой показатель веб-производительности. На загрузку страницы реально влияет сжатый размер после gzip или brotli — а строки Base64 сжимаются совсем не так, как двоичные данные.

РесурсОригиналBase64Накладные расходыПосле gzip
Иконка PNG (1 КБ)1,0 КБ1,4 КБ+40%+5%
PNG (10 КБ)10 КБ13,4 КБ+34%+12%
Фото JPG (50 КБ)50 КБ66,8 КБ+34%+30%
SVG (мелкая иконка)0,5 КБ0,7 КБ+40%URL-кодированный SVG: −10%
Gzip-сжатие значительно снижает переплату за размер Base64. PNG на 10 КБ на 34% больше в двоичном Base64, но всего на 12% больше после gzip — благодаря чему встраивание Base64 для небольших ресурсов обходится дешевле, чем кажется.

5 лучших практик

Встраивайте ресурсы до 2 КБ. Выше этого размера затраты на раздувание бандла и сброс кэша перевешивают сэкономленный запрос.

Никогда не встраивайте изображения LCP (Largest Contentful Paint). Они блокируют критический рендеринг и мешают браузеру их приоритизировать.

Для SVG используйте URL-кодированный SVG, а не Base64. URL-кодированный SVG меньше и поддаётся управлению через CSS (currentColor, анимации).

Сначала сожмите изображение нашими инструментами для PNG или JPEG — Base64 наследует размер того, что вы кодируете.

Добавьте Content-Security-Policy, разрешающую data: в img-src и style-src, если вы отдаёте ресурсы Base64 с другого источника.

Частые вопросы об изображениях в Base64

Загружаются ли мои изображения на ваши серверы? Нет. TinyImagePro читает каждый файл через браузерный FileReader API и обрабатывает его локально. Вы можете отключиться от интернета после загрузки страницы, и конвертация всё равно будет работать. Убедитесь в этом во вкладке «Сеть» вашего браузера.

Почему строка Base64 примерно на 33% больше исходного изображения? Base64 представляет каждые 3 байта двоичных данных как 4 ASCII-символа — это математические накладные расходы 33,3% ещё до переносов строк и префикса data:image/...;base64,. После gzip реальная переплата падает до 5–15% для небольших ресурсов.

Можно ли использовать это для SVG? Да, но именно для SVG стоит рассмотреть URL-кодированный SVG — он меньше и поддаётся стилизации через CSS. Мы поддерживаем ввод SVG, чтобы вы могли экспериментировать, но наш конвертер PNG в SVG — лучшая точка входа для процессов векторизации.

Как декодировать Base64 обратно в изображение? Вставьте Data URL в адресную строку браузера — современные браузеры отображают URL data:image/... нативно. Программно декодируйте через atob() в JavaScript или base64.b64decode() в Python. Отдельный инструмент «Base64 в изображение» уже в наших планах.

PNG to SVG converterHEIC to JPEG converter

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

Да — 100% бесплатно, без регистрации, без водяных знаков, без лимитов по частоте. Конвертация выполняется полностью в вашем браузере через FileReader API.

Нет. Ваши файлы читаются локально через браузерный FileReader API. Вы можете отключиться от интернета после загрузки страницы, и конвертация всё равно будет работать.

Жёсткого лимита нет. Ограничение — это оперативная память устройства. Мы протестировали файлы PNG до 100 МБ на ноутбуке с 16 ГБ.

base64.guru предлагает больше форматов вывода (10 против наших 7), но загружает файлы на свои серверы. base64-image.de работает в браузере, но ограничивает размер файла 1 МБ. Мы сочетаем приватность работы в браузере с отсутствием лимита размера и 7 готовыми к продакшену форматами вывода.

Base64 представляет каждые 3 байта двоичных данных как 4 ASCII-символа — это математические накладные расходы 33,3%. После gzip-сжатия при передаче реальная переплата падает до 5–15% для небольших ресурсов.

Избегайте Base64 для любого изображения крупнее ~2 КБ на критическом пути рендеринга, для любого изображения, которое браузеры должны кэшировать отдельно, и для SVG, где URL-кодированный SVG меньше и поддаётся управлению через CSS.

JPEG, PNG, WebP, GIF, BMP, ICO и SVG работают напрямую. HEIC требует предварительной конвертации; используйте наш конвертер HEIC в JPEG.

Вставьте Data URL в адресную строку браузера — современные браузеры отображают URL data:image/... нативно. Программно используйте atob() в JavaScript или base64.b64decode() в Python.

Конвертер изображений в Base64 — бесплатно, в браузере | TinyImagePro