Member 13943345 Ответов: 1

Как преобразовать шестнадцатеричное значение в растровое изображение в visual cpp?


у меня есть 6-значный шестнадцатеричный массив, который я хочу преобразовать в BMP в cpp.
может вы поделитесь, пожалуйста, ответы.


Что я уже пробовал:

у меня есть массив только из 6-значных шестнадцатеричных чисел.
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;

static const char alphanum[] =
"0123456789"
"abcdef";

int stringLength = sizeof(alphanum) - 1;
char genRandom()
{
	return alphanum[rand() % stringLength];
}

int main()
{
	srand(time(0));
	std::string Str;
	for (int j = 0; j < 8; j++)
	{
		for (unsigned int i = 0; i < 6; ++i)
		{
			Str += genRandom();
		}
		cout << Str << endl;
		Str = "\0";

	}
}

1 Ответов

Рейтинг:
1

CPallini

Более простой частью является преобразование шестнадцатеричного строкового представления чисел в фактические байты. Вы могли бы использовать strtol, например.
Более сложная часть, если я вас понял, - это фактическое создание действительного растрового изображения. К счастью, в интернете есть пример кода. Смотрите, например (я его еще не тестировал) Создать точечный рисунок в формате BMP файл пиксельных данных | technical-recipes.com[^].