|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.07.2013, 00:20 | #11 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
из заголовка вы можете узнать размеры картинок, и так же направление пикселей.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
24.07.2013, 00:37 | #12 |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
судя по прочитанному, заголовок не содержит направления пикселей. Картинка с фиксированным размером, в формате RGB24, больше мне ничего не нужно от файла.
do not use your brain
|
24.07.2013, 02:55 | #13 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
24.07.2013, 11:16 | #14 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
А там разве не ДВА заголовка - BITMAPFILEHEADER и за ним BITMAPINFOHEADER?
Где тут 40 байт? Я насчитал все 50. Далее, вы сказали, что пропускаете 39 байт, хотя как раз эту часть в коде не показали. Если размер заголовка 40 байт от надо делать seek(40) |
24.07.2013, 11:16 | #15 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,679
|
Похоже на переписку с самим собой
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! |
24.07.2013, 11:21 | #16 | ||
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
Цитата:
Цитата:
где indent переменная которая может содержать любое удобное мне значение.
do not use your brain
Последний раз редактировалось Кащей; 24.07.2013 в 11:39. |
||
24.07.2013, 11:27 | #17 |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
Формат - снизу вверх справа на лево BGR 24 бита труколор BI_RGB блин!
do not use your brain
Последний раз редактировалось Кащей; 24.07.2013 в 11:57. |
24.07.2013, 12:11 | #18 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
Есть требование, что ширина битмап картинки в байтах должна быть четной - это в памяти.
Похоже в файлах округляют ширину в пикселях иначе нельзя будет загрузить всю картинку целиком - надо будет читать строчку за строчкой и добавлять лишний байт после каждой строки. Так что читайте заголовок и делите размер всей картинки на высоту картинки и будет ширина строки в байтах - в конце будут неиспользованные байты. Так что сама конверсия у вас в порядке, а вот отрисовка похоже что нет. |
24.07.2013, 12:29 | #19 | |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
Окей, тема закрыта, спасибо waleri, после прочтения етих слов
Цитата:
do not use your brain
|
|
24.07.2013, 12:35 | #20 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
Так, вот оно, в английской версии статьи: http://en.wikipedia.org/wiki/BMP_file_format
Прямо сказано, что ширина картинки в байтах должна быть кратна 4 байтам. 255 * 3 == 765, следующее кратное 4 - 768. 768 * 255 == 195840 - знакомая цифра. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
RGB в CMYK и CMYK в RGB могут конвертироваться без потери качества? | hon | Мультимедиа в Delphi | 5 | 19.08.2012 14:41 |
rgb(***,***,***) | Fisherman86 | Общие вопросы Delphi | 3 | 31.03.2012 11:40 |
Смешивание двух RGBA цветов | Dj_smart | Мультимедиа в Delphi | 7 | 01.03.2012 20:35 |
Палитра RGB | Discovery | Microsoft Office Excel | 12 | 11.06.2011 12:04 |
RGB Flow | Kepler | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 6 | 09.03.2011 00:58 |