Открываем изображения формата BMP

Содержание

Открываем изображения формата BMP

Открываем изображения формата BMP

BMP является популярным форматом изображений без сжатия данных. Рассмотрим, при помощи каких программ можно просмотреть картинки с этим расширением.

Программы для просмотра BMP

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

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

Способ 1: FastStone Image Viewer

Начнем рассмотрение с популярного просмотрщика картинок FastStone Viewer.

  1. Откройте программу FastStone. В меню кликните «Файл» и далее переходите по «Открыть».
  2. Запускается окошко открытия. Переместитесь в нем туда, где помещена картинка BMP. Выделите файл данного изображения и жмите «Открыть».
  3. Выбранное изображение будет открыто в области для предпросмотра в нижнем левом углу окна. В правой его части будет показано содержимое директории, в которой находится целевая картинка. Для полноэкранного просмотра щелкните по файлу, отображаемому через интерфейс программы в каталоге его расположения.
  4. Картинка BMP открыта в программе FastStone Viewer на полный экран.

Способ 2: IrfanView

Теперь рассмотрим процесс открытия BMP в другом популярном просмотрщике изображений IrfanView.

  1. Запустите IrfanView. Щелкайте «Файл» и выбирайте «Открыть».
  2. Запущено окно открытия. Переместитесь в нем в директорию размещения картинки. Выделите ее и нажимайте «Открыть».
  3. Рисунок открыт в программе IrfanView.

Способ 3: XnView

Следующим просмотрщиком изображений, действия в котором по открытию файла BMP будет рассмотрены, является XnView.

  1. Активируйте XnView. Щелкайте «Файл» и выберите «Открыть».
  2. Запускается инструмент открытия. Войдите в каталог нахождения картинки. Выделив элемент, нажимайте «Открыть».
  3. Изображение открыто в новой вкладке программы.

Способ 4: Adobe Photoshop

Теперь перейдем к описанию алгоритма действий по решению описываемой задачи в графических редакторах, начав с популярного приложения Photoshop.

  1. Запустите Фотошоп. Для запуска окна открытия применяйте привычный переход по пунктам меню «Файл» и «Открыть».
  2. Окно открытия будет запущено. Войдите в папку размещения BMP. Выделив его, применяйте «Открыть».
  3. Появится окошко, сообщающее об отсутствии внедренного цветового профиля. Можно вообще его проигнорировать, оставив радиокнопку в позиции «Оставить без изменений», и нажать «OK».
  4. Изображение BMP открыто в Adobe Photoshop.

Главный недостаток данного способа заключается в том, что приложение Фотошоп платное.

Способ 5: Gimp

Другим графическим редактором, который умеет отображать BMP, является программа Gimp.

  1. Запустите Гимп. Жмите «Файл», а далее «Открыть».
  2. Запускается окошко поиска объекта. С помощью его левого меню выберите диск, содержащий BMP. Затем переместитесь в нужную папку. Отметив рисунок, применяйте «Открыть».
  3. Картинка отображена в оболочке Гимп.

В сравнении с предыдущим способом, этот выигрывает в том, что приложение Gimp не требует оплаты за его использование.

Способ 6: OpenOffice

С поставленной задачей успешно справляется также графический редактор Draw, который входит в бесплатный пакет OpenOffice.

  1. Запустите OpenOffice. Жмите «Открыть» в основном окне программы.
  2. Окошко поиска появилось. Найдите в нем месторасположение BMP, выделите данный файл и жмите «Открыть».
  3. Графическое содержимое файла отобразится в оболочке Draw.

Способ 7: Google Chrome

Открывать BMP умеют не только графические редакторы и просмотрщики изображений, но и целый ряд браузеров, например Google Chrome.

  1. Запустите Гугл Хром. Так как у данного браузера отсутствуют элементы управления, с помощью которых можно запустить окно открытия, то будем действовать, используя «горячие» клавиши. Примените Ctrl+O.
  2. Окошко открытия появилось. Зайдите в папку, содержащую рисунок. Выделив его, применяйте «Открыть».
  3. Картинка отобразится в окне браузера.

Способ 8: Universal Viewer

Ещё одной группой программ, умеющих работать с BMP, являются универсальные просмотрщики, к таковым относится и приложение Universal Viewer.

  1. Запустите Юниверсал Вьювер. Как обычно, переходите по элементам управления программой «Файл» и «Открыть».
  2. Запускается окошко поиска файла. Зайдите в нем в месторасположение BMP. Выделив объект, применяйте «Открыть».
  3. Изображение отобразится в оболочке просмотрщика.

Способ 9: Paint

Выше были перечислены способы открытия BMP при помощи сторонних инсталлированных программ, но у Windows есть собственный графический редактор – Paint.

  1. Запустите Паинт. В большинстве версий Виндовс это можно сделать в папке «Стандартные» в разделе программ меню «Пуск».
  2. После запуска приложения щелкайте по пиктограмме в меню, расположенной слева от раздела «».
  3. В появившемся списке выбирайте «Открыть».
  4. Окно поиска изображения запущено. Отыщите месторасположение картинки. Выделив её, применяйте «Открыть».
  5. Рисунок отобразится в оболочке встроенного графического редактора Виндовс.

Способ 10: Средство просмотра фотографий Windows

У Виндовс также есть встроенное средство только для просмотра изображений, с помощью которого можно запустить BMP. Рассмотрим, как это сделать на примере ОС Windows 7.

  1. Проблема состоит в том, что запустить окно данного приложения без открытия самого изображения невозможно. Поэтому алгоритм наших действий будет отличаться от тех манипуляций, которые были проведены с предыдущими программами. Откройте «Проводник» в папке, где находится BMP. Щелкните по объекту правой кнопкой мыши. В появившемся перечне выберите «Открыть с помощью». Далее переходите по пункту «Просмотр фотографий Windows».
  2. Изображение отобразится с помощью встроенного средства Виндовс.

    Если у вас на компьютере не установлено никакого стороннего ПО для просмотра картинок, то запустить BMP с помощью встроенного средства для просмотра фотографий можно просто дважды кликнув левой кнопкой мышки по файлу рисунка в «Проводнике».

    Конечно, средство для просмотра фотографий Windows уступает по функционалу другим просмотрщикам, но зато его не требуется дополнительно инсталлировать, а тех возможностей по просмотру, которые предоставляет данный инструмент, большинству пользователей хватает для того, чтобы посмотреть содержимое объекта BMP.

Как видим, существует довольно большой перечень программ, способных открывать изображения BMP. И это далеко не все из них, а только самые популярные. Выбор конкретного приложения зависит от личных предпочтений юзера, а также от поставленных целей.

Если нужно просто посмотреть рисунок или фото, то лучше использовать просмотрщики картинок, а для редактирования применяйте редакторы изображений. Кроме того, как альтернативу можно использовать для просмотра даже браузеры.

Если пользователь не желает устанавливать дополнительное ПО на компьютер для работы с BMP, то может воспользоваться встроенным программным обеспечением Виндовс для просмотра и редактирования изображений. Мы рады, что смогли помочь Вам в решении проблемы.


Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

ДА НЕТ

Источник: //lumpics.ru/than-to-open-a-bmp-file/

6 приложений Андроид, в которых можно открыть файлы формата BMP

Открываем изображения формата BMP

Операционная система Android, которая устанавливается на большинстве смартфонов и планшетов, имеет ряд преимуществ перед аналогами.

Но в то же время из-за своей простоты «операционка» от Google имеет недостатки, а именно: в ней отсутствует довольно много API-функций, которые отвечают за взаимодействие с файлами, например, работу с изображениями в форме BMP.

Ситуацию помогают исправить дополнительные приложения: с их помощью можно полноценно использовать ОС Андроид.

Что такое формат BMP

BMP (от англ. BitMap Picture) — это формат изображения, который разработан корпорацией Microsoft. Фактически это расширение файла представляет собой изображение, информация о котором содержится побитно. Минус этого формата состоит в том, что в нём отсутствует сжатие.

Потому размер картинок, сохранённых в стандартном формате (jpeg, png и другие), может быть в десятки раз меньше, чем размер такой же картинки, но с расширением bmp.

Кроме того, отличительной характеристикой BMP файла является считывание данных: картинка прогружается снизу вверх, а не сверху вниз, как у остальных форматов.

Формат BMP разработан корпорацией Microsoft

Чем открыть BMP на Андроиде

К сожалению, стандартные инструменты Android не позволяют работать с форматом BMP, и даже открывать картинки для просмотра невозможно. Потому единственно правильным решением проблемы будет установка дополнительного программного обеспечения. Существуют специальные приложения, которые имеют в своём арсенале необходимые API-функции для работы с теми или иными форматами файлов.

Fast Image Viewer

  • доступно для скачивания в Google Play;
  • разработчик: TDF Software;
  • лицензия: бесплатная, есть платная версия с расширенными возможностями.

Fast Image Viewer — это простая программа для просмотра всех форматов изображений (от BMP до TIFF). Для удобства пользования имеет собственный файловый менеджер, что упрощает навигацию по памяти устройства.

Упор в функционале программы сделан на скорость работы. В приложение добавлены полезные мелочи: работа с картинками из MMC, а также обработка PDF файлов.

Приложение Fast Image Viewer читает все форматы изображений и имеет ряд полезных функций

Perfect Viewer

  • доступно для скачивания в Google Play;
  • разработчик: Rookie001;
  • лицензия: бесплатная.

Программа Perfect Viewer — это отличный инструмент для просмотра разного рода изображений.

В приложения вшита возможность просмотра всех популярных форматов, а также добавлен инструмент для более удобного чтения комиксов и книг. Существует возможность работы с файлами Google Drive, Dropbox, OneDrive.

Приложение Perfect Viewer — это качественный и удобный инструмент для просмотра изображений

JPG Image Size Reducer

  • доступно для скачивания в Google Play;
  • разработчик: GamesGreh;
  • лицензия: бесплатная.

Приложение JPG Image Size Reducer является конвертером и оптимизатором изображений.

Основная особенность программы — уменьшение размера картинок, без потери качества. А это может существенно экономить место на вашем девайсе при хранении на нём больших массивов фотографий и документов.

Приложение может работать со всеми видами картинок, конвертировать изображение из одного формата в другой.

Приложение JPG Image Size Reducer позволяет просматривать, конвертировать и изменять размеры картинок

File Viewer for Android

  • доступно для скачивания в Google Play;
  • разработчик: Sharpened Productions;
  • лицензия: бесплатная.

File Viewer for Android — это файловый менеджер с огромным потенциалом для просмотра информации.

В программу вшиты большинство функций для открытия практических всех возможных файлов: документы, изображения, архивы, медиафайлы и многое другое (всего считывается больше 100 форматов).

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

Приложение File Viewer for Android — это мощный менеджер просмотра файлов

Image Viewer

  • доступно для скачивания в Google Play;
  • разработчик: Byte Mobile;
  • лицензия: бесплатная.

Программа Perfect Viewer создана для замены стандартного инструмента «Галерея».

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

Работает со всеми основными форматами изображений (PNG, JPG, GIF, BMP, TGA и другие).

Приложение Image Viewer заменяет галерею и имеет расширенный функционал

Photo Viewer

  • доступно для скачивания в Google Play;
  • разработчик: LiveWallpaper LW;
  • лицензия: бесплатная.

Photo Viewer — это приложение для удобного просмотра изображений на смартфоне.

Программа имеет очень простой и интуитивный интерфейс, который поймёт каждый. Поддержка основных форматов: JPG, BMP, GIF, TIFF, PNG. Для работы приложение потребляет минимум энергии, что также является плюсом.

Приложение Photo Viewer — удобный инструмент просмотра изображений на Android

Открыть файлы с расширением bmp на устройствах Андроид очень просто. Достаточно установить всего одно приложение для просмотра картинок с расширенными API-функциями для чтения всех форматов изображений.

Источник: //dadaviz.ru/chem-otkryit-bmp-na-androide/

Чем открыть BMP формат на компьютере и онлайн, подборка лучших программ

Открываем изображения формата BMP

Это руководство посвящено тому, как удобно работать и выполнять популярные операции с данным типом файлов. Вы узнаете чем открыть Bmp формат на компьютере и с помощью различных онлайн сервисов.

Для реализации обычного просмотра картинок вам не потребуется абсолютно ничего кроме установленной операционной системы Microsoft Windows, т.к. она по умолчанию содержит в себе штатное средство, которое справится с этой задачей. Перед открытием вам предложат сделать выбор:

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

Выберите нужную платформу

Внимание! Рекомендуем скачивать и устанавливать только одно приложение. С нашего портала ссылки на дистрибутивы ведут исключительно на официальные сайты разработчика, поэтому можете не волноваться на счет вирусов.

Работаем с расширением на базе Windows

Если вы начинающий пользователь и не знаете чем открыть BMP формат для просмотра, конвертации и редактирования, то начните именно с этого списка.

  • XnView
  • IrfanView
  • FastStone Image Viewer
  • Universal Viewer
  • JpegView

Платные

  • ACDSee
  • PhotoScape
  • Movavi пакетный фоторедактор
  • FastPictureViewer Pro

Какую из них выбрать лучше всего? Начните с IrfanView или XnView. Это бесплатные просмотрщики изображений, которые в принципе очень схожи, но тем не менее небольшая разница присутствует. Что теперь необходимо сделать?

  • Скачиваем программу;
  • Устанавливаем;
  • Делаем ассоциацию форматов.

Все, теперь по нажатию на любые рисунки приложение будет автоматически запускаться и открывать их.

Какие возможности доступны еще?

  • Убрать красные глаза;
  • Обрезка, поворот;
  • Изменение даты съемки;
  • Уменьшение и увеличение размера;
  • Добавление водяной печати и рамки;
  • Коррекция цветов;
  • Повышение резкости;
  • Наложение эффектов (пикселизация, размытие, тиснение и т.д.);
  • Работа с панорамными фото и т.п.

Доступна поддержка плагинов, которые выполняют широкий спектр задач:

  • Чтение файлов Djvu;
  • Воспроизведение видео и mp3;
  • Определение лиц;
  • Фильтры Photoshop;
  • Создание презентаций в .EXE или .SCR;
  • Захват экрана и т.д.

Онлайн сервисы

А как открыть файл BMP онлайн, не прибегая к установке ПО и возможно ли это вообще? Вполне реально и для этого есть специальные ресурсы, которые обеспечивают  самым необходимым с помощью браузера.

Запущено таких проектов реально много, но мы отобрали наиболее удобные и понятные. Итак, приступим к обзору!

  • Pixlr — по умолчанию активен английский язык, поэтому кликните на вкладку «Languages» и выберите «Russian». Произойдет быстрая перезагрузка и теперь станет все понятно. По сути это полноценный графический редактор с большим набором инструментов. При первом запуске вы можете увидеть следующее:Здесь вам предлагается выбрать действие: создать фото, открыть с компьютера, по конкретному адресу с другого сайта или из библиотеки.
  • Fotor — помимо стандартных возможностей предлагает создание титульных страниц для всех популярных социальных сетей (, , , Instagram, и т.д.), коллажей и реставрацию портрета.Доступны свыше сотни шрифтов, наклеек и форм. И самое главное это конечно синхронизация со всеми вашими устройствами. Работайте в облаке и получайте доступ к проектам откуда угодно! Но за это придется заплатить, т.к. опция является платной. Если приобрести годовой абонемент, то цена станет неприлично низкой.
  • Befunky — интерфейс русифицирован и выполнен в темных тонах. Присутствуют рекламные блоки (убираются покупкой Pro версии), но они особо не мешают. Придется потратить время на то, чтобы разобраться с управлением, но оно того стоит;
  • Canva Photo Editor — настоятельно рекомендуем новичкам! Очень легок в освоении и в нем нет ничего лишнего. Тем не менее это достаточно мощный инструмент, который станет незаменимым;
  • Free Online Photo Editor — минимальный набор возможностей. Это ваш выбор, если вы ищите простое и эффективное решение.

Считаете, что мы пропустили достойный вариант? Пожалуйста свяжитесь с нами с помощью обратной связи и мы обязательно дополним сборник.

Для телефонов на базе Android

На многих смартфонах изначально установлены разнообразные просмотрщики и часть из них довольно успешно с этим справляются. Чем открыть расширение BMP, если они вас не устраивают? Предлагаем поставить следующие приложения непосредственно из Google Play Store.

  • Simple Gallery – бесплатный и удобный инструмент. Нам очень понравилось тем, что можно заблокировать доступ к просмотру галереи с помощью сканера отпечатка пальца. Иногда это очень важно;
  • AA Image Viewer – полностью отсутствует реклама, чем обычно грешат аналогичные продукты;
  • Редактор фото – разработка Dreams Room, а это значит, что в вашем распоряжении уникальный редактор, который содержит огромную базу эффектов. Есть портретная обработка, которая поможет убрать с лица прыщи и пятна, а также отбелит зубы и кожу. Девушкам оценят его по достоинству!

Вот такой минимальный набор для этого формата, но его вполне хватит. Надеемся, что этот материал оказался полезным!

Источник: //SoFtornika.com/kak-otkryt-fajjl/bmp

Описание формата BMP

Открываем изображения формата BMP

Эта статья про то, как выглядит графический формат bmp. Хоть это и один из простых форматов, но из-за того, что существует много вариаций этого формата, то не все моменты очевидны. Итак, хватит лить воду, начнем.

Структуры формата

Формат bmp (от слов BitMaP – битовая карта, или, говоря по-русски, битовый массив) представляет из себя несжатое (в основном) изображение, которое довольно легко читается и выводится в ОС Windows, в которой есть специальные функции API, которые в этом помогают.

Для начала приведем графическое представление данных в bmp (картинка взята из MSDN).

В начале стоит заголовок файла (BITMAPFILEHEADER). Он описан следующим образом:

 typedef struct tagBITMAPFILEHEADER
 {
   WORD    bfType;
   DWORD   bfSize;
   WORD    bfReserved1;
   WORD    bfReserved2;
   DWORD   bfOfits;
 } BITMAPFILEHEADER, *PBITMAPFILEHEADER;

bfType определяет тип файла. Здесь он должен быть BM. Если Вы откроете любой файл BMP в текстовом (а лучше в 16-ричном редакторе), то увидите, что первые два символа – это BM (от слова BitMap, как вы уже, наверное, догадались).
bfSize – это размер самого файла в байтах.

Строго говоря вы должны его высчитывать (что рекомендуется), но я ставил размер файла неправильно (правда, не нарочно :)) и никаких проблем не было (ACDSee читало без проблем, моя программа работала), но я вам не рекомендую писать его заведомо неправильно, вдруг появится добросовестная программа, которая сверит этот размер с настоящим и решит, что это не bmp, а что-нибудь другое. В идеале все программы для того, чтобы убедиться, что перед ними действительно bmp, а не подделка, должны, во-первых, проверить, что bfType содержит “BM” (без кавычек), а, во-вторых, что bfSize равен размеру файла.
bfReserved1 и bfReserved2 зарезервированы и должны быть нулями.
bfOfits. Это один из самых важных полей в этой структуре. Он показывает, где начинается сам битовый массив относительно начала файла (или, как написано в MSDN, “от начала структуры BITMAPFILEHEADER”), который и описывает картинку. То есть, чтобы гарантированно попадать на начало массива вы должны писать:

SetFilePointer (hFile, bfh.bfOfits, NULL, FILE_BEGIN);

Здесь и далее будем считать, что переменная bfh объявлена как BITMAPFILEHEADER bfh;

А дальше идет структура BITMAPINFOHEADER, которая объявлена так:

 typedef struct tagBITMAPINFOHEADER
 {
   DWORD  biSize;
   LONG   biWidth;
   LONG   biHeight;
   WORD   biPlanes;
   WORD   biBitCount;
   DWORD  biCompression;
   DWORD  biSizeImage;
   LONG   biXPelsPerMeter;
   LONG   biYPelsPerMeter;
   DWORD  biClrUsed;
   DWORD  biClrImportant;
 } BITMAPINFOHEADER, *PBITMAPINFOHEADER;

biSize – это размер самой структуры. Ее нужно инициализировать следующим образом: bih.biSize = sizeof (BITMAPINFOHEADER); Снова здесь и дальше будем считать, что bih объявлена следующим образом: BITMAPINFOHEADER bih;

biWidth и biHeight задают соответственно ширину и высоту картинки в пикселях.

biPlanes задает количество плоскостей. Пока оно всегда устанавливается в 1.
biBitCount – Количество бит на один пиксель. Подробнее про это поговорим ниже.
biCompression обозначает тип сжатия. Не удивляйтесь и не пугайтесь, что в bmp и вдруг сжатие. Я лично не видел не одной сжатой bmp (но я не говорю, что таких не существует). Если сжатия нет, то этот флаг надо устанавливать в BI_RGB. В этой статье мы говорим про несжатый формат, поэтому другие флаги я даже не буду перечислять. Похоже, что эта же структура используется и в файлах JPEG и PNG, потому что, начиная с Windows 98 тут появились варианты BI_JPEG, которая показывает, что эта картинка – JPEG и BI_PNG, что это PNG (про формат Jpeg я ничего не знаю, я только сделал эти выводы исходя из того, что написано в MSDN).
biSizeImage обозначает размер картинки в байтах. Если изображение несжато (то есть предыдущее поле установлено в BI_RGB), то здесь должен быть записан ноль. biXPelsPerMeter и biYPelsPerMeter обозначают соответственно горизонтальное и вертикальное разрешение (в пикселях на метр) конечного устройства, на которое будет выводиться битовый массив (растр). Приложение может использовать это значение для того, чтобы выбирать из группы ресурсов наиболее подходящий битовый массив для нужного устройства. Дело в том, что формат bmp – это по сути аппаратно-независимый растр, то есть когда внешний вид того, что получается не зависит от того, на что этот растр проецируется (если можно так выразится). Например, картинка будет выглядеть одинаково вне зависимости от того, рисуется она на экране монитора или печатается на принтере. Но вот разрешение у устройств разное, и именно для того, чтобы выбрать наиболее подходящую картинку из имеющихся и используют эти параметры.
biClrUsed определяет количество используемых цветов из таблицы. Если это значение равно нулю, то в растре используется максимально возможное количество цветов, которые разрешены значением biBitCount. Это актуально только для сжатых картинок. Если biClrUsed не нуль и biBitCount меньше 16, то biClrUsed определяет текущее число цветов графического движка или доступного драйвера устройства. Если biBitCount больше или равно 16, то biClrUsed определяет размер таблицы цветов, используемой для оптимизации текущей системной палитры.
biClrImportant – это количество важных цветов. Определяет число цветов, которые необходимы для того, чтобы изобразить рисунок. Если это значение равно 0 (как это обычно и бывает), то все цвета считаются важными.

Виды формата BMP

Все разновидности формата bmp условно можно разделить на два типа: палитровые и беспалитровые. То есть используется в данном с формате палитра или нет. Заметьте, что палитра может быть даже в беспалитровых форматах, только там она не используется.

В беспалитровых bmp цвет высчитывается прямо из тех битов, которые идут в файле, начиная с некоторого места. А в палитровых каждый байт описывает один или несколько пикселей, причем значения байта (или битов) – это индекс цвета в палитре. Для начала приведу таблицу, которая сравнивает возможные варианты.

Вид картинки (палитровая или беспалитровая) зависит от того, сколько бит отдается на один пиксель, то есть от значения biBitCount структуры BITMAPINFOHEADER.

biBitCountПалитровый или беспалитровый форматМаксимально возможное количество цветовПримечания
1Палитровый2Двуцветная, заметьте, не обязательно черно-белая, палитровая картинка. Если бит растра (что это такое чуть ниже) сброшен (равен 0), то это значит, что на этом месте должен быть первый цвет из палитры, а если установлен (равен 1), то второй.
4Палитровый16Каждый байт описывает 2 пикселя. Вот пример из MSDN.Если первый байт в картинке 0x1F, то он соответствует двум пикселям, цвет первого – второй цвет из палитры (потому что отсчет идет от нуля), а второй пиксель – 16-й цвет палитры.
8Палитровый256Один из самых распространенных вариантов. Но в то же время и самых простых. Палитра занимает один килобайт (но на это лучше не рассчитывать). Один байт – это один цвет. Причем его значение – это номер цвета в палитре.
16Беспалитровый216 или 215Это самый запутанный вариант. Начнем с того, что он беспалитровый, то есть каждые два байта (одно слово WORD) в растре однозначно определяют один пиксель. Но вот что получается: битов-то 16, а компонентов цветов – 3 (Красный, Зеленый, Синий). А 16 никак на 3 делиться не хочет. Поэтому здесь есть два варианта. Первый – использовать не 16, а 15 битов, тогда на каждую компоненту цвета выходит по 5 бит. Таким образом мы можем использовать максимум 215 = 32768 цветов и получается тройка R-G-B = 5-5-5. Но тогда за зря теряется целый бит из 16. Но так уж случилось, что наши глаза среди всех цветов лучше воспринимают зеленый цвет, поэтому и решили этот один бит отдавать на зеленую компоненту, то есть тогда получается тройка R-G-B = 5-6-5, и теперь мы может использовать 216 = 65536 цветов. Но что самое неприятное, что используют оба варианта. В MSDN предлагают для того, чтобы различать сколько же цветов используется, заполнять этим значением поле biClrUsed из структуры BITMAPINFOHEADER. Чтобы выделить каждую компоненту надо использовать следующие маски. Для формата 5-5-5: 0x001F для синей компоненты, 0x03E0 для зеленой и 0x7C00 для красной. Для формата 5-6-5: 0x001F – синяя, 0x07E0 – зеленая и 0xF800 красная компоненты соответственно.
24Беспалитровый224А это самый простой формат. Здесь 3 байта определяют 3 компоненты цвета. То есть по компоненте на байт. Просто читаем по структуре RGBTRIPLE и используем его поля rgbtBlue, rgbtGreen, rgbtRed. Они идут именно в таком порядке.
32Беспалитровый232Здесь 4 байта определяют 3 компоненты. Но, правда, один байт не используется. Его можно отдать, например, для альфа-канала (прозрачности). Читать растр в данном случае удобно структурами RGBQUAD, которая описана так:

typedef struct tagRGBQUAD
 {
   BYTE    rgbBlue;
   BYTE    rgbGreen;
   BYTE    rgbRed;
   BYTE    rgbReserved;
 } RGBQUAD;

Хранение данных в формате bmp

Ну вот и подошли к самому интересному. После структур BITMAPFILEHEADER и BITMAPINFOHEADER идет палитра. Причем, если формат беспалитровый, то ее может и не быть, однако, на это рассчитывать не надо.

Дело в том, что, когда я только начинал разбираться с форматом bmp, в одной книжке я вычитал, что, якобы, если формат беспалитровый, то у нее вообще нет палитры. Там даже были две картинки – схемы формата: одна с палитрой, другая без. А я в это время писал программу, которая усердно оперирует с bmp-шками.

И мне надо было преобразовывать входящие картинки из 256 цветов в 24-битные (если таковые имелись) во временные файлы. И я в 24-битных палитру просто не создавал (bfOfits из структуры BITMAPFILEHEADER у меня был равен сумме sizeof(BITMAPFILEHEADER) + sizeof (BITMAPINFOHEADER), а входящие 24-разрядные оставлял без изменений.

С 256-цветными растрами все работало как надо, пока мне не попалась 24-разрядная картинка, у которой внизу вместо нужной части отображался мусор. Я не сразу понял в чем дело. Пока не сравнил размер исходного файла с теоретическим, который должен был быть, не будь палитры. Разница оказалась ровно 1 Kб (ровно 1024 байта). Там была палитра.

Поэтому никогда не рассчитывайте на то, есть ли палитра и не надейтесь на ее размер (хотя все картинки, которые мне попадались имели размер палитры 256 цветов, или 1Кб), всегда перемещайтесь по файлу на начало растра, используя bfOfits. Палитра представляет из себя массив структур RGBQUAD идущих друг за другом.

Даже если в палитре используются не все цвета (а только, например, 16), то часто все равно под палитру отводят 256 полей. А 256 * 4 = 1024, где 4 – размер структуры RGBQUAD, то есть и получается тот самый один килобайт.

Сразу за палитрой идет сам растр. Тут уже более запутано. Во-первых, пиксели тут описываются так, как написано в таблице выше в зависимости от формата. И могут сами содержать значение компонентов цвета (для беспалитровых), а могут быть индексами массива-палитры. Сама картинка записывается построчно.

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

И, в-третьих, как написано в [1], если размер строки растра не кратен 4, то она дополняется от 1 до 3 пустыми (нулевыми) байтами, чтобы длина строки оказалась кратна параграфу. Вот это и есть самое неприятное.

Дело в том, что для каждого формата приходится подстраивать это число пустых байтов (правда, я люблю туда записывать часть палитры, просто мне не хочется заводить лишние “нулевые” переменные, если все-равно эти байты пропускают и никому они не нужны).

Я привожу таблицу с формулами, которые показывают для какого формата сколько байт надо дописывать в конец строки. Там под переменной Width, как можно догадаться, подразумевается ширина картинки. Все эти формулы были установлены экспериментально. Я приведу пример только для наиболее используемых форматов. Для остальных вы можете написать сами.

biBitCountФормула на С
8(3 * Width) % 4
16(2 * Width) % 4
24Width % 4

Примеры программ

Источник: //jenyay.net/Programming/Bmp

Чем открыть BMP на Андроиде: обзор популярных приложений

Открываем изображения формата BMP

Формат BMP, несмотря на его применение в решении задач резко сузившегося за последние 10 лет круга, всё ещё используется. Не обошёл стороной он и мобильные устройства. Для этого и нужны приложения Андроид, позволяющие работать с картинками в формате BMP.

Зачем нужен и где применяется формат BMP

Несмотря на то что формат BMP являлся первым форматом просмотра и сохранения картинок в Windows, его недостаток — растровость. Т. е. кодируется каждая точка, а не вся одноцветная (или близкая по оттенкам) область изображения.

Из-за этого любой скриншот из этой статьи, занимающий в формате JPEG или PNG от нескольких десятков до пары сотен килобайт, в формате BMP расходовал бы до нескольких мегабайт, словно это чертёж или карта для печати на листах A0 или «скан» высокого разрешения от 100 Мп.

Забавная для современных пользователей особенность: картинки BMP на сайтах прогружаются снизу вверх — а не наоборот, как в остальном.

Даже на 100-мегабитном интернете такие картинки загружались бы не мгновенно — а смартфоны на Android, особенно нижней ценовой планки, заметно «подвисали» бы. Собственно, из-за громоздкости формат BMP покинул гаджеты и ПК — сохранять картинки в BMP можно и сейчас, но им чаще пользуются для чёрно-белых или малоцветных чертежей, предварительно сжав до 2–6-битной разрядности (2–64 цвета).

Рисовать, например, комиксы в True Color (16777216 цветов, 24-битная кодировка) — это использование как дискового пространства, так и трафика при отправке, поэтому при сохранении картинки её сжимают в программе Paint как минимум в JPEG, или используют векторные редакторы типа CorelDraw и других аналогов.

Как открыть картинки BMP на Андроид-гаджетах

Тем не менее, несмотря на свою неэкономичность, картинки в BMP иногда бывает нужно посмотреть.

Если вам на устройство скинули эскиз, чертёж или иные наброски именно в BMP, здесь-то и задумываешься: а как открыть такую картинку, без ПК или ноутбука, — особенно в командировке, когда в руках только смартфон или планшет с Android. Разумеется, устройство должно обладать достаточно скоростным процессором и объёмным ОЗУ.

В Android отсутствуют встроенные приложения для просмотра BMP-картинок — ни «Фотографии», ни «Галерея», являющиеся как бы частью Android, с ними не работают.

Все команды нерусифицированных приложений переведены на русский.

Приложение Perfect Viewer

По сравнению с предыдущим FIV, программа Perfect Viewer намного проще. Но это впечатление обманчиво: обилие настроек скрыто внутри.

Выберите любой эскиз, чтобы развернуть картинку во весь экран

Удобный просмотрщик PV напоминает приложение «Фотографии», встроенное в Windows XP/Vista/7. Также есть режим слайд-шоу и кнопка удаления неудачных фото.

Листание картинок в PV с помощью кнопок со стрелками

Обновлённая версия Perfect Viewer имеет улучшенный перевод и изобилие настроек.

Фотогалерея: все настройки PerfectViewer

Начните с главного меню настроек PV Настройки показа, как в файлах e-book Регулировка подсветки и ориентации в PV Расширенные настройки отображения в PV Удобство перелистывания фото в PV Показ кнопок чтения/листания в PV Оптимизация сохранения изображений в PV Настройки в Page Viewer (только главное меню) Выбор кнопки для настройки в PV Введите название и числовой номер кнопки PV Задайте каждой кнопке функцию

Файл-менеджер Perfect Viewer во многом повторяет «Диспетчер файлов Android» и похожие сторонние приложения.

Выберите, как располагать файлы в менеджере Perfect Viewer

Приложение Perfect Viewer бесплатно и доступно в PlayMarket. Обе программы — и Fast Image Viewer тоже — созданы программистом «Rookie001».

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.