Загрузка изображения в графическое представление из байтового массива

У меня возникла проблема с загрузкой данных изображений из необработанных данных bmp, загруженных ранее из файла большой игры.
Я уверен, что данные в порядке, так как else ветвь не достигнута, но изображение не показано.
Может я не пользуюсь loadFromData правильно?
Кто-нибудь встречался с этой проблемой раньше?

QByteArray buff((this->current_object->image_buffer));
QPixmap pixmap;
if(pixmap.loadFromData(buff)){
QGraphicsPixmapItem *item = new QGraphicsPixmapItem(pixmap);
this->scene->addItem(item);
this->ui->graphicsView->update();
}else{
QMessageBox::information(0, "Error.", "Could not convert BMP image.");

//TEST IF BITMAP IS CORRECT
FILE *pFile = fopen("/home/konstanty/img.bmp", "wb");
for(int j=0;j<this->current_object->bitmap_size;j++){
fwrite (&this->current_object->image_buffer[j], 1 , 1 , pFile);
}
fclose(pFile);

QPixmap imgg("/home/konstanty/img.bmp");
qDebug() << imgg.isNull(); // output - false

0

Решение

Ошибка была в конструкторе QByteArray, я должен был использовать этот.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]