Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
grigoryfedorov
0 / 0 / 0
Регистрация: 04.04.2016
Сообщений: 1
#1

Из массива пикселей сформировать bmp изображение - C++

04.04.2016, 08:30. Просмотров 245. Ответов 2
Метки нет (Все метки)

Добрый день.
Имеется массив пикселей char*, из которого необходимо сформировать bmp изображение.

В массиве пиксел представлен 12-ти разрядным числом, кот. сдвинутое влево на 4, т.е. 4 младших бита равны 0.
Чтобы сформировать 8 битный bmp необходимо брать старший байт из массива.

Мне подсказали, что нужно привести char* к short* и применить макрос HIBYTE.

С языком знаком плохо, поэтому возникли трудности. Помогите написать пару строк кода. Буду благодарен!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2016, 08:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Из массива пикселей сформировать bmp изображение (C++):

Работа с BMP-файлами (класс "8 битное BMP изображение) - C++
Написать класс "8 битное BMP изображение".Класс должен содержать 3 конструктора: конструктор по умолчанию, конструктор с параметрами и...

Матрица пикселей в BMP - C++
Программа: #include <iostream> #include <fstream> #include <cstdio> #include <windows.h> using namespace std; int...

Работа с bmp файлом. Считывание значение пикселей в массив - C++
Здравствуйте. Необходимо написать код который считывает из bmp картинки значение пикселей RGB в массив. Спасибо за внимание!

Ввод рисунка из файла *.bmp. Подсчет общего числа пикселей в строке,столбце матрицы рисунка... - C++
На языке СИ++ написать программу,Выполняющую следующие операции: Ввод рисунка из файла *.bmp. Подсчет общего числа пикселей в...

Увеличить BMP изображение в два раза - C++
Дано задание увеличить 8-битное BMP изображение в два раза. Функцию реализовать в классе. После некоторых размышлений получился сий код=)...

Считать BMP изображение в динамическую память - C++
Нужно считать ВМР изображение в массив в динамической памяти используя fstream.

2
zss
Модератор
Эксперт С++
6690 / 6252 / 2084
Регистрация: 18.12.2011
Сообщений: 16,325
Завершенные тесты: 1
04.04.2016, 08:35 #2
C++
1
2
3
4
5
unsigned short* pxls;
....
unsigned char* bmp=new char[ImageSize];
for(unsigned i=0;i<ImageSize;i++)
    bmp[i]=(pxls[i]>>8);
0
Serg_o_Grey
76 / 76 / 27
Регистрация: 29.03.2016
Сообщений: 348
04.04.2016, 08:36 #3
char к short привести просто:
C++
1
2
char ch = 200;
(short)ch;
и так для каждого элемента массива
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.04.2016, 08:36
Привет! Вот еще темы с ответами:

Не записывает в файл (увеличить bmp изображение в 2 раза) - C++
Дано задание увеличить bmp изображение в 2 раза. Написал программу, которая по идее, должна делать сие действие (все в классе), но записи в...

Как преобразовать изображение BMP в черно-белое и не только? - C++
Здравствуйте! В общем стоит задача сделать консольный фото редактор, который выполнял бы ряд задач. Не без помощи гугла, часть из них я...

Сформировать из BMP файла новый, больший в 4 раза - C++
Пожалуйста, объясните что и как тут нужно сделать. Использовать только стандартные библиотеки Написать программу, формирующую по...

Картинка в виде двумерного массива пикселей - C++
Можно ли, засунув картинку в проект, получить её массив пикселей? Есть ли для этого какая-либо функция? Всё, что мне хочется, это взять...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru