画像の強度は8ビット(0-255) でなければなりません。
void img2jpeg:: makeImage(unsigned char* imgData) { QSize gsize(hSize, vSize) ; // hSize, vSize は自分で指定 QImage qimg(gsize, QImage::Format_Indexed8) ; qimg.setNumColors(256) ; for(int i=0; i<256; i++){ qimg.setColor(i, qRgb(red[i], green[i], blue[i])) ; // 0-255 } for(int y=0; y<VSize; ++y){ // set data to image for(int x=0; x<HSize; ++x){ *(qimg.scanLine(y) + x) = imgData[y*HSize+x] ; } } QPixmap pixmap = QPixmap::fromImage(qimg) ; pixmap.save(saveName, "JPEG", 80) ; //80 quality }