Добрый день!
Есть 8-битное 256-grayscale изображение, получаемое с некоторого USB-устройства. Яркости пикселей этого изображения хранятся в матрице Img размером Width*Height.
Создаю новое изображение QImage:
QImage Picture = QImage((const unsigned char*)(Img),
Width, Height, QImage::Format_Indexed8);
Далее конвертирую PIcture в QPixmap и сохраняю полученную картинку в JPEG файл:
QPixmap SPicture = QPixmap::fromImage(Picture);
SPicture.save("PICTURE.jpeg");
Все работает, в сохраненном файле получается требуемая серая картинка. Но есть одна проблема - изображение сохраняется с глубиной цвета 24 бит, а нужно 8 бит.
Пробовал сохранять в jpeg файл QImage без конвертации в QPixmap:
Picture.save("PICTURE.jpeg");
Изображение сохраняется в 8 битке, но вместо картинки получается черное пятно на светлом фоне.
Подскажите, что делать?
Заранее спасибо.