我想标题已经解释了我想知道的。
有没有可能用 Qt 打开和保存 16 位图像的方法?我不是说 3*8=24bit 或 4*8=32bit,和纯 8-bit 图像完全一样,我是指 R、G 和 B 的纯 16-bit。
问问题
5311 次
5 回答
4
与 Patrice 所说的相反,在QImage
. 您最多可以获得QImage::Format_ARGB32
每个组件 8 位。即使您使用 8 位索引模式,颜色表也不支持每个组件超过 8 位。此外,QImageIOHandler
该类以QImage
.
于 2009-12-06T15:06:04.230 回答
0
您可以为此目的使用 libpng (png++)。
于 2012-03-08T07:48:54.473 回答
0
QImage::Format 不定义纯 16 位但可以定义 10 位。
QImage::Format_A2RGB30_Premultiplied
( http://doc.qt.io/qt-5/qimage.html ),每个通道可以使用 RGB 10 位 (0...1)。
但是如果使用QImage::setPixel
它们仍然使用每个通道 8 位来定义来自QColor
.
于 2015-09-11T21:50:48.337 回答
0
正如其他人已经提到的那样,目前 Qt 中不支持每个组件 16 位的格式。
但是,有一个请求可以实现这一点,并附有补丁:https ://bugreports.qt.io/browse/QTBUG-45858
不确定它的状态是什么,以及它是否会被整合。
于 2015-10-29T09:52:15.903 回答
0
支持Qt5.13
这是示例
QImage raw((uchar*)byte.data(), 480, 640, QImage::Format_Grayscale16);
raw.save(QString("%1/depth.raw").arg(fileName));
使用标志QImage::Format_Grayscale16
于 2020-06-12T05:32:37.717 回答