Последние изменения - Поиск:
RSS блога RSS блога

Начало

Блог

Программки

    Google+

Плагины

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

Фото

Контакты

Я в твиттере Я в ЖЖ

Bmp-Comments

 06.12.2007 - 18:17

confused smiley

 24.02.2008 - 20:25

как это вы додумались до этого?

Jenyay 25.02.2008 - 19:23

До чего именно?

Хорош_гусь)) 26.02.2008 - 22:18

Big Endian - Small Endian

Надо ещё учесть то, что все числа лежат в формате Big Endian, т.е. байты местами переставлены! Я до этого долго доходил!

Сергей 11.07.2008 - 17:00

программы для открытия структуры файла BMP

Здравствуйте подскажите какие программы позволяют открывать структуру любого файла BMP (с просмотром кода каждого пикселя)?

Фосса 05.11.2008 - 12:15

Little Endian!

Таки данные представлены в формате Little Endian, то есть младшим байтом-вперёд }=

Den 08.01.2009 - 13:04

Так если это взято из MSDN, тогда почему другие графические редакторы не могут открыть файл в этом формате????????

Jenyay 08.01.2009 - 17:32

Какой файл?

amarant555 13.02.2009 - 15:04

пробовал на делфи работать с файлом созданым фотожоп >16 бит не воспринимает видимо там 5-5-5 вместо 5-6-5 (с которым умеет работать делфи) кому не трудно можете проверить прав я или нет.

amarant555 13.02.2009 - 15:07

поправка вернее делфи работает с файлом 16 бит но воспринимает формат как кастом, при этом не возможно использовать ряд функций.

PanzerDogg 22.02.2009 - 22:55

GOOD!!!

 26.02.2009 - 09:43

confused smileyangry smiley

 10.05.2009 - 17:50

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

Jenyay 10.05.2009 - 17:57

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

DiezAver 16.05.2009 - 11:18

мне вот очень интересно, а в этом месте:

 // Пишем мусор для выравнивания
         WriteFile (hOut, Palette, Width % 4, &RW, NULL);
         SetFilePointer (hIn, (3 * Width) % 4, NULL, FILE_CURRENT);

пишется мусор размером Width % 4. При размере картинки, скажем 255, Width % 4 будет = 3, но разве записать надо не на 1 байт?

Jenyay 16.05.2009 - 11:23

Нет, нужно писать не один байт, потому что один пиксель занимает три байта. Если бы картинка была 8-битовая, а не 24-битовой, то достаточно было бы одного байта.

DiezAver 19.05.2009 - 09:01

О, действительно, просто я как раз с 8-битовыми сейчас работаю

Влад 01.06.2009 - 19:08

Проблема с чтением палитры

Я создал 256-цветный рисунок в стандартном Paint'е. В програме загрузил рисунок и палитру, но цвета отображаются неправильно(нету оттенков красного). Так загружаю палитру:

for(int i=0; i<256; i++){
    fin.get(color.blue);
    fin.get(color.green);
    fin.get(color.red);
    fin.get(reserved);
    setPaletteRegistr(i, &color);
  }

daim 31.07.2009 - 08:10

такой вот глупый вопросец: с 24 бит на пиксель понятно допустим белый - FF FF FF читаем каждый канал и записываем В свои байтные переменные а с 16 бит на пиксель как? тотже белый FF 7F FF? как то через маску....? и размер параграфа то же будьте добры, просто первый раз здесь услышал

Джей 13.11.2009 - 17:04

"...есть надписи на русском языке"

> "BitMaP - битовая карта, или, говоря по-русски, битовый массив" Вообще-то слово "массив" - французского происхождения (massif от massiz). Но это мелочи. Я тут чеек посторонний, просветите: што за язык чудной вы используете для программ своих написания? Уж не Си ли это?

Jenyay 13.11.2009 - 17:11

Джей

Да, Си, но тут не столько сам язык, сколько вызовы функций WinAPI, от самого языка не так много осталось :)

Джей 17.11.2009 - 10:51

Si, si...

Я щас пишу на C# (уж больно заказчик формы любит...). Какую среду разработки посоветуете?

Jenyay 17.11.2009 - 10:55

Visual C# Express, если не хочется денег на среду тратить.

Джей 17.11.2009 - 11:28

Ah, bien merci, merci bien...

Mille mercis... З.ы. source: "Распространенье наше по планете / Особенно заметно вдалеке. / В общественном парижском туалете / Есть надписи на русском языке" (В.С. Высоцкий)

Джей 17.11.2009 - 17:32

mille pardons

Je m'excuse de vous demander pardon... Вы в ЦОИз шарите? Если да, в чём именно?

Jenyay 30.11.2009 - 22:26

В ЦОИ скорее теоретически представляю что к чему. А вообще по работе я иногда занимаюсь обработкой несколько специфических изображений (радиоизображений).

Людмила 17.01.2010 - 18:44

Очень важная для меня, интересная информация. Большое спасибо. Удачи, здоровья.

murder 07.04.2010 - 13:52

16-битные изображения

По моим наблюдениям Photoshop не использует поле biClrUsed.

Алгоритм такой: Если поле biCompression равно BI_RGB то формат 5:5:5. Если же это поле содержит BI_BITFIELDS, то цвета нужно считывать согласно маскам bV5RedMask, bV5GreenMask, bV5BlueMask.

Кроме того BI_BITFIELDS в сочетании с масками позволяет менять расположение цветов (например RGB вместо стандартного BGR). Я проверял это на функции SetDIBitsToDevice - работает.

Domen0 25.05.2010 - 12:08

Огромное спасибо! Наконец-то нашел.grinning smiley

Винт 01.09.2010 - 18:27

маленькая поправочка для концовки ...

     delete[] inBuf;
     delete[] outBuf;

 25.09.2010 - 20:07

shrieking smileyconfused smileyfrowning smileyangry smiley

 01.10.2010 - 18:14

shrieking smileyshrieking smileyshrieking smileyshrieking smileyshrieking smileyshrieking smileyshrieking smileyshrieking smiley

)))) 21.12.2010 - 05:54

confused smileyangry smileyshrieking smiley

 14.01.2011 - 20:55

здесь никто ни чего не знает

Ротва 18.01.2011 - 02:09

Амет

Написал собственную прогу по этой статье. Спасибо. Проверил все варианты, за исключением 5-5-5, 5-6-5. Если у кого-то есть изображения с таким форматом и БЕЗ сжатия, очень прошу выложить на http://pixs.ru/ и скинуть линк сюда! thx!

апт 12.03.2011 - 11:01

врт

куgrinning smiley

Duk Nukem 27.10.2011 - 20:43

Ошибка в программе

Ваша программа при компиляции выдаёт ошибку в строке:

hFile = CreateFile (fname, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL);

fname неправильного типа.Как исправить это?

Jenyay 29.10.2011 - 09:47

Попробовал сейчас скомпилировать исходник в Visual C++ 2008 Express, все скомпилировалось. А у Вас каком компилятор?

eugrita 27.12.2011 - 05:41

создание BMP

у меня ваша программа создала BMP-файл, но просмотр его оказался недоступен. Почему??? (Win XP)

eugrita 27.12.2011 - 05:43

cоздание BMP

При попытке открытия Paint говорит что недостаточно ресурсов для выполнения операции

Slavon G. 11.01.2012 - 02:26

re: создание BMP

eugrita, тяжело что-то сказать, не видя кода программы Jenyay, а вот тут ошибочкаhappy smiley //Convert256To24() bfh.bfSize = bfh.bfOffBits + 3 * Width * Height + Height * (Width % 4);

Slavon G 11.01.2012 - 02:29

re: создание BMP

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

PS: каптча любит шестеркиshrieking smiley

Править - История - Печать - Последние изменения - Поиск
Последняя редакция от 11.01.2012 02:29