Конвертер Base64 в BMP

Сохраняйте растровые данные Base64 в файл .bmp или преобразуйте любое изображение Base64, которое может показать ваш браузер, в несжатый 32-битный BMP для устаревших программ Windows и встраиваемых систем.

Работает полностью в браузере. Данные никуда не загружаются.

Как пользоваться

  1. Вставьте строку Base64 или URI data:image/bmp;base64. Также принимаются PNG, JPEG, WebP и другие форматы.
  2. Проверьте предпросмотр, размеры и размер после декодирования.
  3. Формат BMP уже выбран в списке «Скачать как». Если данные уже представляют собой BMP и нужны без изменений, выберите вместо него «Оригинал».
  4. Скачайте файл .bmp.

Как распознать BMP в Base64

Файлы растровых изображений Windows начинаются с двух букв BM, которые кодируются в Qk в самом начале строки Base64. В следующем за ними заголовке хранятся размер файла, смещение пиксельных данных, размеры изображения и глубина цвета. Данные BMP встречаются в старых приложениях Windows, при экспорте из буфера обмена и скриншотов, в кассовых и промышленных системах, в инструментах для дисплеев микроконтроллеров и в тестовых данных. Тип MIME обычно image/bmp, хотя встречается и image/x-ms-bmp.

Браузеры показывают распространённые варианты BMP, но очень старые растровые изображения OS/2 и редкие режимы сжатия отображаются не во всех браузерах. Если предпросмотр остаётся пустым, хотя строка начинается с Qk, скачайте файл в варианте «Оригинал» и откройте его в настольной программе просмотра изображений.

Почему файлы BMP такие большие

Конвертер записывает несжатые 32-битные пиксели, по четыре байта на каждый пиксель, поэтому размер файла зависит только от размеров изображения, а не от его содержимого:

РазмерыРазмер BMPВ виде Base64
640 × 480около 1,2 МБоколо 1,6 МБ
1920 × 1080около 8,3 МБоколо 11 МБ
3840 × 2160около 33 МБоколо 44 МБ

Тот же скриншот в формате PNG часто в десять раз меньше. Используйте BMP, только если этого требует принимающая программа.

О 32-битном результате

Результат сохраняет альфа-канал, поэтому прозрачные области остаются прозрачными в программах, которые его читают. Некоторые старые программы игнорируют альфа-канал и могут показывать такие области чёрными или белыми. В этом случае уберите прозрачность из исходного изображения перед преобразованием.

Чтобы декодировать BMP из Base64 в Windows без браузера, достаточно PowerShell:

$b64 = Get-Content .\image.txt -Raw
[IO.File]::WriteAllBytes("$PWD\image.bmp", [Convert]::FromBase64String($b64))

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

Почему BMP намного больше исходного файла?

BMP сохраняется без сжатия и занимает четыре байта на пиксель. Сжатый PNG или JPEG того же изображения обычно гораздо меньше.

Поддерживает ли BMP прозрачность?

Да, 32-битные файлы BMP, которые создаёт этот инструмент, содержат альфа-канал. Отображается ли прозрачность, зависит от программы, в которой открыт файл.

Как понять, что строка Base64 содержит BMP?
Данные BMP начинаются с Qk — так выглядят буквы BM в Base64. Инструмент подтверждает формат, читая байты заголовка.
Можно ли преобразовать BMP обратно в Base64?
Да, с помощью инструмента BMP в Base64. Возможно, стоит сначала преобразовать изображение в PNG, поскольку строка Base64 несжатого растрового изображения может быть очень длинной.