此命令行: QImage :: QImage(uchar * data,int width,int height,int bytesPerLine,Format format) 会这样使用吗? QImage image =新的QImage(缓冲区,600,400,jpg) bytesPerLine不是很好,照片会占用kb吗? 感谢
答案 0 :(得分:2)
如果您不想使用bytesPerLine参数,则有
QImage::QImage ( uchar * data, int width, int height, Format format )
构造
但是,格式不是您可能想到的。 format
参数指定一个枚举值,该值决定位深度等。输入jpg
或"jpg"
将无效。检查Format-enum以获取可能值的列表。
答案 1 :(得分:0)
答案 2 :(得分:0)
这就是你如何使用这个构造函数:
int imageWidth = 800;
int imageHeight = 600;
int bytesPerPixel = 4; // 4 for RGBA, 3 for RGB
int format = QImage::Format_ARGB32; // this is the pixel format - check Qimage::Format enum type for more options
QImage image(yourData, imageWidth, imageHeight, imageWidth * bytesPerPixel, format);
您不指定图像格式(png,jpeg等),而是指定像素格式(RGB,RGBA等)