WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  Bitmaps

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   Bitmaps
MrSergei опубликован 12-10-2001 01:46 MSK   Click Here to See the Profile for MrSergei   Click Here to Email MrSergei  
Можно ли из битмапа вытащить значения RGB для каждого пикселя? Т.е. узнать массив значений интенсивности
пикселей у битмапа, ну и записать все это дело в файл.

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

Kosha опубликован 12-10-2001 04:10 MSK     Click Here to See the Profile for Kosha  Click Here to Email Kosha     
Вообще-то в структуре BITMAP содержится, насколько мне помнится, указатель на данные, но они разного формата бывают, я делал через функцию GetDIBits
Kostik опубликован 12-10-2001 08:31 MSK     Click Here to See the Profile for Kostik  Click Here to Email Kostik     
Посмотри список функций Библиотеки
http://www.pentium.com.ru/software/products/perflib/ipl/iplapi.htm

Если чё, то дам инсталяшку.

Flex Ferrum опубликован 12-10-2001 10:07 MSK     Click Here to See the Profile for Flex Ferrum  Click Here to Email Flex Ferrum     
Я думаю, что функция GetDIBits тебе поможет. Она возвращает массив пикселей из заданного битмэпа, совместимый с заданным контекстом. Подробней смотри в MSDN
MrSergei опубликован 12-10-2001 17:03 MSK     Click Here to See the Profile for MrSergei  Click Here to Email MrSergei     
У меня есть только LPBITMAPIFOHEADER, битмапа как такогого нет (кадр из авишного файла).
А как обращаться с функцией GetDIBits, ведь как мне кажется, она возвращает
только колличество линий в битмапе,
если вас не затруднит, расскажите как ей пользоваться, чтобы можно было получить массив
значений RGB пикселей.
к примеру
22 22 .....
22 11 .....
...........

Спасибо
Flex Ferrum опубликован 12-10-2001 18:03 MSK     Click Here to See the Profile for Flex Ferrum  Click Here to Email Flex Ferrum     
Подожди, если у тебя есть BITMAPINFOHEADER, то, в таком случае, у тебя и сама картинка должна быть.
MrSergei опубликован 12-10-2001 19:02 MSK     Click Here to See the Profile for MrSergei  Click Here to Email MrSergei     
Картинку я изображаю путем DrawDibDraw,
эту картинку сохраняю как bmp, но, мне необходим не bmp-шник, а значения (массив)интенсивности (0...255) для каждого пикселя, но не путем GetPixel(), а из битмапа, вот как это сделать, я не знаю
Kosha опубликован 14-10-2001 01:51 MSK     Click Here to See the Profile for Kosha  Click Here to Email Kosha     
Могу на мыло екзампл кинуть. Мыло в профиле правильное?
MrSergei опубликован 14-10-2001 15:26 MSK     Click Here to See the Profile for MrSergei  Click Here to Email MrSergei     
Да, пожалуйста, если не трудно, кинь на мыло примерчик, а то замучался я уже.
mrserega@mail.ru

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.