Top.Mail.Ru
Уведомления
Очистить все

Работа с форматом QImage (конвертация?)

(@bendom)
New member

Доброго дня,

у меня возможно не самый типичный вопрос, но тем не менее... У меня есть данные об изображении, то есть имеются ввиду сырые данные (байты) со значениями пикселей (один из вариантов - по 1 байту на канал (A, R, G, B), итого 32 бита на пиксель). Вопрос в том, как из этих байтов получить в программе QImage, чтобы в дальнейшем с ним работать?

Заранее спасибо откликнувшимся.

Цитата
Создатель темы Размещено : 25.01.2025 11:49
Метки темы
Aveal
(@aveal)
Top level Admin

Добрый день, через конструкторы QImage:

QImage(const uchar *data, int width, int height, int bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(uchar *data, int width, int height, int bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(const uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)
QImage(uchar *data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction = nullptr, void *cleanupInfo = nullptr)

data - указатель на "сырые" данные, format - соответственно формат.

ОтветитьЦитата
Размещено : 25.01.2025 13:04
(@bendom)
New member

@aveal точно, спасибо, не знаю как сам не увидел этот вариант в документации... А конвертацию сделал через QImage::convertTo().

ОтветитьЦитата
Создатель темы Размещено : 26.01.2025 12:29
Поделиться: