BMP (bitmap) формат на данните. Как да отворя .BMP файл? Как да отворите bmp файл на windows 7

Тази статия е за това как изглежда графичният формат bmp. Въпреки че това е един от по-простите формати, поради факта, че има много варианти на този формат, не всички точки са очевидни. Така че, спрете да наливате вода, нека да започнем.

Форматни структури

Форматът bmp (от думите BitMaP - битова карта или на руски битов масив) е некомпресирано (предимно) изображение, което е доста лесно за четене и показване в Windows OS, което има специални API функции, които помагат.

Първо, нека дадем графично представяне на данните в bmp (снимка, взета от MSDN).

В началото има заглавка на файла (BITMAPFILEHEADER). Тя е описана по следния начин:

bfTypeопределя вида на файла. Тук той трябва да е BM. Ако отворите който и да е BMP файл в текстов редактор (или още по-добре в шестнадесетичен редактор), ще видите, че първите два знака са BM (от думата BitMap, както вероятно вече се досещате).
bfSizeе размерът на самия файл в байтове. Строго погледнато, трябва да го изчислите (което е препоръчително), но аз зададох размера на файла неправилно (макар и не нарочно :)) и нямаше проблеми (ACDSee четеше без проблеми, програмата ми работеше), но не ви препоръчвам напишете го умишлено неправилно, изведнъж ще се появи съвестна програма, която ще сравни този размер с реалния и ще реши, че не е bmp, а нещо друго. В идеалния случай всички програми, за да се уверят, че това е истински bmp, а не фалшив, трябва, първо, да проверят дали bfType съдържа "BM" (без кавички), и второ, че bfSize е равен на размера на файла.
bfReserved1 и bfReserved2са запазени и трябва да бъдат нула.
bfOffBits. Това е едно от най-важните полета в тази структура. Той показва къде започва самото растерно изображение спрямо началото на файла (или, както е написано в MSDN, "от началото на структурата BITMAPFILEHEADER"), който описва картината. Тоест, за да стигнете гарантирано до началото на масива, трябва да напишете:

typedef struct tagBITMAPINFOHEADER
{
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD биплани;
WORD biBitCount;
DWORD бикомпресия;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
) BITMAPINFOHEADER, * PBITMAPINFOHEADER;

biSizeе размерът на самата конструкция. Трябва да се инициализира по следния начин: bih.biSize = sizeof(BITMAPINFOHEADER);
Тук отново ще приемем, че bih е деклариран както следва: BITMAPINFOHEADER bih;
biWidth и biHeightзадайте съответно ширината и височината на изображението в пиксели.
бипланиопределя броя на равнините. Засега винаги е зададено на 1.
biBitCount- Брой битове на пиксел. Ще говорим повече за това по-долу.
бикомпресияпоказва вида на компресията. Не се изненадвайте или плашете, че 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 определя размера на цветовата таблица, използвана за оптимизиране на текущата системна палитра.
biClrВажно- това е броят на важните цветове. Определя броя на цветовете, които са необходими за изобразяване на чертежа. Ако тази стойност е 0 (както обикновено е), всички цветове се считат за важни.

Видове BMP формат

Всички видове bmp формат условномогат да бъдат разделени на два вида: палитра и не палитра. Тоест дали палитрата се използва в даден формат или не. Моля, обърнете внимание, че палитрата може дори да бъде във формати без палитри, но не се използва там. В bmps без палитри цветът се изчислява директно от битовете, които влизат във файла, като се започне от определено място. А в палитрите всеки байт описва един или повече пиксели, а стойностите на байтовете (или битовете) са цветовият индекс в палитрата. Като начало ще предоставя таблица, която сравнява възможните опции. Типът картина (палета или без палитра) зависи от това колко бита са дадени на пиксел, тоест от стойността biBitCount на структурата BITMAPINFOHEADER.

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

Съхранение на данни в bmp формат

Е, сега стигаме до най-интересната част. След структурите BITMAPFILEHEADER и BITMAPINFOHEADER идва палитрата. Освен това, ако форматът е без палитри, тогава може да не е там, но не трябва да разчитате на него. Факт е, че когато току-що започнах да разбирам bmp формата, прочетох в една книга, че уж, ако форматът е без палитри, тогава той изобщо няма палитри. Имаше дори две снимки - форматни диаграми: едната с палитра, другата без. И по това време пишех програма, която усърдно работи с bmp файлове. И трябваше да конвертирам входящи изображения от 256 цвята в 24-битови (ако има такива) във временни файлове. И аз просто не създадох 24-битова палитра (bfOffBits от структурата BITMAPFILEHEADER беше равна на сумата от sizeof(BITMAPFILEHEADER) + sizeof (BITMAPINFOHEADER) и оставих входящите 24-битови непроменени. С 256-цветни растери всичко работеше както трябва, докато не попаднах на 24-битово изображение, което имаше боклук, показан в долната част вместо необходимата част, не разбрах веднага какво не е наред, докато не сравних размера на оригиналния файл с теоретично, ако нямаше палитра, се оказа, че е имало палитра (въпреки че всички снимки, на които се натъкнах, имаха размер на палитрата от 256 цвята или 1Kb), винаги се придвижвайте през файла до началото на растера, като използвате bfOffBits. Палитрата е масив от RGBQUAD структури една след друга не всички цветове се използват в палитрата (а само, например, 16), тогава често се разпределят 256 полета за палитрата A 256 * 4 = 1024, където 4 е размерът на структурата RGBQUAD, т.е получава се един килобайт.

Веднага след палитрата идва самият растер. Тук нещата стават още по-объркващи. Първо, пикселите са описани тук, както е написано в таблицата по-горе, в зависимост от формата. И те могат сами по себе си да съдържат стойността на цветовите компоненти (за тези без палитри) или могат да бъдат индекси на масив от палитри. Самата картина се записва ред по ред. Второ, картината изглежда обърната с главата надолу. Тоест първо се пише долният ред, след това предпоследният и така до самия връх. И трето, както е написано в, ако размерът на растерния ред не е кратен на 4, тогава той се допълва с 1 до 3 празни (нула) байта, така че дължината на реда да е кратна на абзаца. Това е най-неприятното. Факт е, че за всеки формат трябва да коригирате този брой празни байтове (въпреки че обичам да пиша част от палитрата там, просто не искам да създавам допълнителни „нулеви“ променливи, ако тези байтове така или иначе са пропуснати и никой има нужда от тях). Предоставям таблица с формули, които показват за кой формат колко байта трябва да се добавят в края на реда. Там променливата Width, както може би се досещате, означава ширината на изображението. Всички тези формули са установени експериментално. Ще дам пример само за най-използваните формати. За останалото можете да го напишете сами.

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

Можете да изтеглите всички източници, няма да пиша много тук. Просто ще дам функциите с коментари.

Здравейте 1. Създаване на картина в bmp формат.
Тук се създава едноцветна картина. Има три примера за такива функции: създаване на bmp 8, 16 и 24 бита. Давам само за 16-битов.

// Нека създадем картина в bmp формат 16 бита като 5-5-5, която ще бъде просто монохроматична
void CreateBmp555(char * fname, WORD цвят)
{
HANDLE hFile;
DWORD RW;
int i, j;

// Деклариране на необходимите структури
BITMAPFILEHEADER bfh;
BITMAPINFOHEADER bih;
BYTE палитра [1024]; // Палитра

// Нека имаме изображение от 35 x 50 пиксела
int Ширина = 35;
int Височина = 50;

memset (Палитра, 0, 1024); // В палитрата имаме нули, попълнете ги
memset (&bfh, 0, sizeof (bfh)) ;

Bfh.bfType = 0x4D42; // Нека отбележим, че това е bmp "BM"
bfh.bfOffBits = sizeof (bfh) + sizeof (bih) + 1024; // Палитрата заема 1Kb, но няма да я използваме
bfh.bfSize = bfh.bfOffBits +
sizeof(цвят) * Ширина * Височина +
Височина * ((sizeof (цвят) * Ширина) % 4 ) ; // Изчислете размера на крайния файл
memset (&bih, 0, sizeof (bih)) ;
bih.biSize = sizeof(bih); // Така трябва да бъде
bih.biBitCount = 16; // 16 бита на пиксел
bih.biClrUsed = 32768 ; // Използваме 5-5-5
bih.biCompression = BI_RGB; // Без компресия
bih.biHeight = Височина;
bih.biWidth = Ширина;
bih.biPlanes = 1; // Трябва да е 1
// А останалите полета остават 0

HFile = CreateFile(fname, GENERIC_WRITE, 0, NULL, CREATE_WAYS, 0, NULL);
ако (hFile == INVALID_HANDLE_VALUE)
връщане ;

// Напишете заглавките
WriteFile (hFile, & bfh, sizeof (bfh) , & RW, NULL) ;
WriteFile (hFile, & bih, sizeof (bih) , & RW, NULL ) ;

// Напишете палитрата
WriteFile(hFile, Palette, 1024, &RW, NULL);
за (i = 0; i< Height; i++ )
{
за (j = 0; j< Width; j++ )
{
WriteFile (hFile, & color, sizeof (color) , & RW, NULL ) ;
}

// Подравнете с границата
WriteFile (hFile, Palette, (sizeof (цвят) * Ширина) % 4, & RW, NULL) ;
}
CloseHandle(hFile) ;
}

цвят - цвят на картината. Стойността на тази променлива трябва да се попълни според първата таблица. Можете да видите получената картина в ACDSee например. Току-що се опитах да го отворя във Photoshop, но се оказа, че не може да ги прочете в този формат, но можете :).

Пример 2. Преобразуване на картина от 8-битов формат (256 цвята) в 24-битов.

BOOL Convert256To24 (char * fin, char * fout)
{
BITMAPFILEHEADER bfh;
BITMAPINFOHEADER bih;
int Ширина, Височина;
RGBQUAD палитра[ 256 ] ;
BYTE * inBuf;
RGBTRIPLE * outBuf;
ДРЪЖКА hIn, hOut;
DWORD RW;
DWORD OffBits;
int i, j;

HIn = Създаване на файл (fin, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL) ;
ако (hIn == INVALID_HANDLE_VALUE)
върне FALSE;

HOut = CreateFile(fout, GENERIC_WRITE, 0, NULL, CREATE_WAYS, 0, NULL);
if (hOut == INVALID_HANDLE_VALUE)
{
CloseHandle(hIn);
върне FALSE;
}

// Прочетете данните
ReadFile (hIn, & bfh, sizeof (bfh) , & RW, NULL) ;
ReadFile (hIn, & bih, sizeof (bih) , & RW, NULL) ;
ReadFile (hIn, Palette, 256 * sizeof (RGBQUAD) , & RW, NULL ) ;

// Задайте показалеца в началото на растера
SetFilePointer (hIn, bfh.bfOffBits, NULL, FILE_BEGIN) ;
Ширина = bih.biWidth;
Височина = bih.biHeight;
OffBits = bfh.bfOffBits;

// Разпределение на паметта
inBuf = нов BYTE [ширина];
outBuf = нов RGBTRIPLE [ширина];

// Попълване на заглавките
bfh.bfOffBits = sizeof (bfh) + sizeof (bih) ; // Нека не пишем палитра
bih.biBitCount = 24;
bfh.bfSize = bfh.bfOffBits + 4 * Ширина * Височина + Височина * (Ширина % 4) ; // Размер на файла

// И останалото остава непроменено
// Напишете заглавките
WriteFile (hOut, & bfh, sizeof (bfh) , & RW, NULL) ;
WriteFile (hOut, & bih, sizeof (bih) , & RW, NULL ) ;

// Да започнем конвертирането
за (i = 0; i< Height; i++ )
{
ReadFile(hIn, inBuf, Width, & RW, NULL);
за (j = 0; j< Width; j++ )
{
outBuf[ j].rgbtRed = Палета[ inBuf[ j] ] .rgbRed;
outBuf[ j].rgbtGreen = Палета[ inBuf[ j] ] .rgbGreen;
outBuf[ j].rgbtBlue = Палета[ inBuf[ j] ] .rgbBlue ;
}
WriteFile (hOut, outBuf, sizeof (RGBTRIPLE) * Ширина, & RW, NULL) ;

// Писане на боклук за подравняване
WriteFile (hOut, Palette, Width % 4, & RW, NULL) ;
SetFilePointer(hIn, (3 * Ширина) % 4, NULL, FILE_CURRENT) ;
}

изтриване на inBuf;
изтриване на outBuf;
CloseHandle(hIn);
CloseHandle(hOut);
връща TRUE;
}

Имената на изходния и целевия файл трябва да бъдат съответно предадени на функцията.

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

Система за търсене

Въведете файлово разширение

Помогне

Улика

Моля, обърнете внимание, че някои кодирани данни от файлове, които нашият компютър не чете, понякога могат да бъдат прегледани в Notepad. По този начин ще четем фрагменти от текст или числа - Струва си да проверите дали този метод работи и в случай на BMP файлове.

Какво да направите, ако приложението от списъка вече е инсталирано?

Често инсталираното приложение трябва автоматично да се свърже към BMP файл. Ако това не се случи, тогава BMP файлът може да бъде успешно свързан ръчно с новоинсталираното приложение. Просто щракнете с десния бутон върху BMP файла и след това от наличния списък изберете опцията "Избор на програма по подразбиране". След това трябва да изберете опцията „Преглед“ и да намерите любимото си приложение. Въведените промени трябва да бъдат одобрени с опцията "ОК".

Програми, които отварят BMP файла

Windows
MacOS

Защо не мога да отворя BMP файл?

Проблемите с BMP файловете могат да имат и други причини. Понякога дори инсталирането на софтуер на вашия компютър, който поддържа BMP файлове, няма да реши проблема. Причината за невъзможността за отваряне и работа с BMP файла може също да бъде:

Неподходящи асоциации на BMP файлове в записите в системния регистър
- повреда на BMP файла, който отваряме
- Инфекция на BMP файл (вируси)
- твърде малък компютърен ресурс
- остарели драйвери
- премахване на разширението BMP от системния регистър на Windows
- непълна инсталация на програма, която поддържа BMP разширението

Коригирането на тези проблеми трябва да доведе до свободно отваряне и работа с BMP файлове. В случай, че компютърът ви все още има проблеми с файлове, трябва да потърсите помощта на експерт, който ще установи точната причина.

Компютърът ми не показва файлови разширения, какво да правя?

В стандартните системни настройки на Windows потребителят на компютъра не вижда файловото разширение BMP. Това може успешно да се промени в настройките. Просто отидете на „Контролен панел“ и изберете „Преглед и персонализиране“. След това трябва да отидете на „Опции на папката“ и да отворите „Преглед“. В раздела "Преглед" има опция "Скриване на разширения на известни типове файлове" - трябва да изберете тази опция и да потвърдите операцията, като щракнете върху бутона "OK". В този момент разширенията на всички файлове, включително BMP, трябва да се показват сортирани по име на файл.

Съобщение

BMP формат на растерни изображения

BMP (файл с растерна графика, формат на файл с растерна графика, независим от устройството) са файлове с растерна графика, използвани за съхраняване на цифрови растерни изображения отделно от устройството за показване. Този тип файл е бил използван преди в Microsoft Windows и OS/2. Терминът "растер" идва от идеята на програмистите за растерно изображение. BMP изображенията обикновено са некомпресирани или компресирани без загуби (например с помощта на ZIP или RAR - поради наличието на излишни данни във файла). Днес JPG е предпочитаният формат за изображения - главно поради големия размер на файла на BMP, който може да причини проблеми или забавяне при изтегляне, изпращане или качване на файлове.

Техническа информация за BMP файлове

BMP файловете се съхраняват като 2D изображения с различни размери, цветове и дълбочини на цветовете без компресиране на данни, цветови профили или алфа канали. BMP изображенията се записват в независими от устройството растерни (DIB) формати, което означава, че изображението има цветове, а не системни спецификации. Това обяснява защо някои BMP изображения изглеждат различно на различни компютри. BMP изображенията могат да се гледат на всяко устройство, включително компютърни и телевизионни екрани. Липсата на патенти направи този тип изображение популярен формат за широка гама от устройства.

Допълнителна информация за BMP формата

Надяваме се, че сме ви помогнали да разрешите проблема си с BMP файла. Ако не знаете къде можете да изтеглите приложение от нашия списък, щракнете върху връзката (това е името на програмата) - Ще намерите по-подробна информация за това къде да изтеглите версията за защитена инсталация на необходимото приложение.

Какво друго може да причини проблеми?

Може да има повече причини, поради които не можете да отворите BMP файла (не само липсата на съответното приложение).
Първо- BMP файлът може да е неправилно свързан (несъвместим) с инсталираното приложение, което да го поддържа. В този случай трябва сами да промените тази връзка. За да направите това, щракнете с десния бутон върху BMP файла, който искате да редактирате, щракнете върху опцията „За отваряне с“и след това изберете програмата, която сте инсталирали от списъка. След това действие проблемите с отварянето на BMP файла трябва напълно да изчезнат.
Второ- файлът, който искате да отворите, може просто да е повреден. В този случай би било най-добре да намерите нова негова версия или да го изтеглите отново от същия източник (може би по някаква причина в предишната сесия изтеглянето на BMP файла не е завършило и той не може да бъде отворен правилно) .

искаш ли да помогнеш

Ако имате допълнителна информация относно разширението на файла BMP, ще ви бъдем благодарни, ако я споделите с потребителите на нашия сайт. Използвайте намиращия се формуляр и ни изпратете вашата информация за BMP файла.

Много често, когато работят с графики, много потребители срещат изображения във формат BMP. Днес малко хора знаят какво е това. Сега ще разгледаме графичния формат BMP по-подробно. Освен това ние не само ще проследим историята на неговия произход и еволюция, но и ще предложим някои прости методи за конвертирането му в други популярни формати.

Какво е BMP формат?

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

Да, вярно е. Първоначално форматът на изображението BMP се прилагаше изключително за растерни изображения и беше универсално (стандартно) разширение за всички графики като цяло.

История на произход

Историята на създаването на този формат е неразривно свързана с Microsoft Corporation, която за първи път го внедри в основното си дете - операционната система Windows. Освен това, въпреки постоянната конкуренция с Apple, по-късно беше обявена поддръжка за този тип графики за операционната система OS/2.

Вярно е, че оттогава BMP графичният формат е претърпял много промени. Първоначално се предполагаше, че структурата на изображението е изградена върху комбинация от малки квадратчета, днес известни като пиксели. Смята се, че всеки пиксел в изображение може да съдържа данни за различна дълбочина на цвета (броят битове на такава графична единица). Стойностите, използвани за обозначаване на битовата дълбочина на цвета, са както следва: 1, 2, 4, 8, 16, 24, 32, 48, 64 бита.

В този случай, за стойности по-малки от 8, цветът се посочва само с помощта на индекса на палитрата (таблица) от нюанси, а за стойности над индекса се взема от стандартния RGB модел. Последният съдържа цветови вариации, получени чрез смесване на червено, зелено и синьо.

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

Как да отворя BMP файлов формат?

Що се отнася до отварянето на изображения от този тип, всяка операционна система Windows има вградени инструменти за това.

Докато не бъдат създадени приложения за преглед, основният инструмент за редактиране си остава родната програма Paint, включена във всяка версия на Windows. По това време това приложение поддържаше изключително BMP формат.

Както вече стана ясно, с развитието на технологиите и еволюцията на самия формат се промени и програмата. Днес възможностите на Paint са много по-големи от тези на първоначалните му версии.

В допълнение, с появата на програми за преглед и редактиране на графики, файловият формат BMP беше обявен в техническата поддръжка и в тях. Не е изненадващо, тъй като именно той беше „пра-дядото“ на почти всички познати днес разширения на файлове с изображения.

Можете да намерите много програми за работа с такива графични данни. Сред инструментите за преглед, например, в Windows можете да използвате стандартен инструмент; сред приложенията на трети страни, софтуерни пакети като ACDSee или Irfan View и много други са доста популярни.

Що се отнася до редактирането, можете да използвате всичко за работа, например същия Adobe Photoshop, Corel Draw или всеки друг графичен редактор, който има дори минимален набор от инструменти и възможности.

Най-лесният начин за конвертиране на BMP формат

Сега нека да видим как да промените BMP формата по най-простите начини. За да направите това, можете да използвате същите графични редактори.

Ако вземем за пример стандартното приложение Paint, първо в него се отваря желаният BMP файл, след което се избира командата “Save As...” от менюто “File”, където в root, на долния ред (падащо меню), можете да намерите поддържаните формати.

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

Използване на конвертори

Един от най-лесните начини за конвертиране на различен тип изображение във формат BMP, да не говорим за използването на стандартни инструменти на Windows и графични редактори, е използването на специализирани конвертори, които работят автоматично.

Тук всичко е просто. Потребителят добавя графични файлове за конвертиране в прозореца на програмата, след което избира крайния формат (в този случай BMP) и натиска бутона, за да започне процеса на конвертиране. Крайните файлове в новия формуляр ще бъдат записани в папка, чието местоположение е зададено по подразбиране в приложението или зададено ръчно.

Между другото, същото важи и за обратния процес, когато трябва да конвертирате BMP формата в друг.

С многото програми в тази област в Интернет можете да намерите много ресурси, които ви позволяват да извършвате такива трансформации онлайн. Само в този случай потребителят качва файлове на сайта, избира крайния формат и след това изтегля резултата на своя компютър. Съгласете се, в сравнение с първите два метода не е много удобно.

Заключение

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

Но в заключение бих искал да добавя няколко думи за конвертирането на графични файлове в некомпресиран BMP формат. Разбира се, текущата му версия заема по-малко дисково пространство. Но все още се различава от по-модерните типове компресирани данни. По принцип самият BMP формат може дори да се нарече малко остарял, тъй като малко хора го използват днес. Следователно конвертирането на компресирани формати в типа графични файлове с разширение .bmp изглежда очевидно непрактично на настоящия етап.

Разширение на файл .bmp
Категория на файла
Примерен файл (2,7 MiB)
(487,85 KiB)
Свързани програми Адобе Фотошоп
MS Paint
Microsoft Photo Editor
Четка за рисуване