Форум программистов «Весельчак У»
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
Начало
Наши сайты
Галерея
Весельчак У
Наша Вики
Хранилище
Проекты
Правила
Правила форума
Правила русского языка
Помощь
Поиск
Календарь
Почта
Войти
Регистрация
Форум программистов «Весельчак У»
>
Программирование
>
.NET технология от и до
> Тема:
Как получить биты
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Как получить биты (Прочитано 10061 раз)
0 Пользователей и 3 Гостей смотрят эту тему.
Mfcer__
Команда клуба
Offline
Как получить биты
«
:
14-10-2004 21:54 »
открываю с помощью класса Bitmap какой - нибудь графический файл, напирмер bmp
Bitmap image = new Bitmap("image_file.bmp");
как мне получить доступ к битам изображения из объекта Bitmap?
Чтобы изменять цвет и прочее отдельного бита?
Записан
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
Как получить биты
«
Ответ #1 :
15-10-2004 02:52 »
точно не знаю, но наверное через эту процедура битмапа -
DWORD CBitmap::GetBitmapBits(DWORD dwCount, LPVOID lpBits) const;
(BYTE*)lpBits - указывает, скорее всего, на массив байтов с битами , порядок - честно не знаю
Записан
>FAQ ПО ПРОГР.
>ССЫЛКИ ПО ПРОГР.
>Правила"Неотложки"
Mfcer__
Команда клуба
Offline
Как получить биты
«
Ответ #2 :
15-10-2004 06:34 »
нашел сам, но только не получая массива байт, что плохо
использую SetPixel , GetPixel ,а чтобы получить именно весь массив не нашел
функции типа GetBitmapBits там вроде нет
Записан
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
Как получить биты
«
Ответ #3 :
15-10-2004 15:45 »
Mfcer__
, а попробуй открой файл просто как двоичный , что то вроде
CString name="...";
CFile file(name, CFile::modeReadWrite | CFile::typeBinary);
правда не из битмапа...
Записан
>FAQ ПО ПРОГР.
>ССЫЛКИ ПО ПРОГР.
>Правила"Неотложки"
Mfcer__
Команда клуба
Offline
Как получить биты
«
Ответ #4 :
15-10-2004 17:02 »
в смсле мне нужно не получить файл как поток байт, а получить просто байты самого рисунка, то есть жвумерный массив где каждое значение - цвет точки
Записан
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
Как получить биты
«
Ответ #5 :
15-10-2004 19:33 »
Mfcer__
, так скопируй из файла в массив типа BYTE , созданный в памяти
Записан
>FAQ ПО ПРОГР.
>ССЫЛКИ ПО ПРОГР.
>Правила"Неотложки"
Mfcer__
Команда клуба
Offline
Как получить биты
«
Ответ #6 :
16-10-2004 06:12 »
дело в том что скопируется весь файл с Header'ами и прочим, ведь bitmap имеет свой формат
нашел как решить проблему - с помощью LockBits и UnlockBits у класса Bitmap, котороые вернут BitmapData, в котором уже содержится то что нужно
только работать придется с указателями в unsafe режиме :?
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Форум программистов «Весельчак У»
>
Программирование
>
.NET технология от и до
> Тема:
Как получить биты
Загружается...