|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Окт 24, 2003 01:18:44 · Поправил: Asterix Имеется bitmap, кто не узнал-стандартный рисунок стола из win98, который распознаётся всеми графическими редакторами как 1 битный чёрно-белый, но в реальности мы видим что он синий, почему так?, как тогда можно получить другой цвет, но чтоб bitmap так и оставался чёрно-белым, это сильно уменьшает его размер ;-) _743426010__Bitmap.bmp |
|
|
Дата: Окт 24, 2003 02:08:14 Посмотри в MSDN описание структур BITMAPFILEHEADER и BITMAPINFO. Особенно обрати внимание на поле bmiColors. Затем глянь на файл и многое станет ясно. |
|
|
Дата: Окт 24, 2003 02:39:53 Asterix Так я ведь уже объяснял в чём там дело. как тогда можно получить другой цвет, но чтоб bitmap так и оставался чёрно-белым В хекс-редакторе правишь палитру. |
|
|
Дата: Окт 24, 2003 03:24:19 Ааааааа, вы мне точно место укажите где в самом файле находится сие поле, отвечающее за цвет, и какие оно может принимать значения?? |
|
|
Дата: Окт 24, 2003 04:45:42 Давно я битмапы вручную не парсил... Данное поле не имеет точного местоположения (фактически зависит от битмапа). Значения оно принимает, вроде, в RGB формате. Ты в хексе на это смотрел? Сделай так: 1. Нарисуй в Paint прямоугольник сплошного цвета. 2. Глянь в хексе. 3. Поменяй цвет прямоугольника. 4. Опять глянь в хексе и сравни (file compare). ... Ну, дальше ты ДОЛЖЕН сам всё понять!!! ЗЫ: BMP - элементарный формат, хоть и не без подводных камней ;-) |
|
|
Дата: Окт 24, 2003 10:51:49 Asterix Обычно палитра начинается с 54 байта. Каждый элемент палитры занимает 4 байта. Интенсивность синего, зеленого, красного и один байт не используется. |
|
|
Дата: Окт 24, 2003 11:38:18 Тут всё дело в палитре. Если тебе надо в проге создать, такой растр, то во время создания создавай обычное совместимое растровое изображение, а во время сохранения указывай кодировку 1 бит на пиксель. Создавай палитру, передавай её прцедуре сохранения. Не пробавал но думаю должно получится, если дашь свой мыльник вышлю тебе процедуру, которая будет анологична процедуре из исходника PaintView, но с дополнительным парметром хендлом палитри для сохранения (если надо конечно). |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.079 |