是否有任何已知的尺寸/空间限制QPixmap
and/or QImage
记录的对象?我没有找到任何与此相关的有用信息。我目前在 OSX 和 Windows 上使用 Qt 4.7.3。我特别感兴趣的是:
- 宽度/高度限制?
- 限制取决于颜色格式?
- 32/64位机的区别?
- 关于操作系统的差异?
我天真地怀疑内存是唯一的限制,所以可以通过以下方式计算最大大小
宽度 x 高度 x 每像素字节数
我认为有一个更详细的经验法则;当您遇到 GB 尺寸时,32 位机器也可能会出现寻址问题。
最后,我想存储多个大小约为 16000x16000 像素的 RGBA 图像,并在一个QGraphicsScene
。可用的工作站可以有大量 RAM,比如说 16GB。
tl;dr:您知道 QImage/QPixmap 的大小限制是什么,或者我在哪里可以找到此类信息?
Edit:我知道平铺方法并且对此很满意。尽管如此,了解上述内容还是很高兴的。
Thanks!
两者都限制为 32767x32767 像素。也就是说,您可以将它们视为对 X 和 Y 分辨率使用带符号的 16 位值。
任何轴都不能超过 32767 像素,即使另一个轴只有 1 像素。操作系统“位数”不影响该限制。
在创建如此巨大的图像之前,底层系统可能会遇到其他限制,例如您提到的内存。
您可以在以下源代码中看到此限制的示例:http://git.zx2c4.com/qt/plain/src/gui/image/qpixmap_x11.cpp http://git.zx2c4.com/qt/plain/src/gui/image/qpixmap_x11.cpp
if (uint(w) >= 32768 || uint(h) >= 32768) {
w = h = 0;
is_null = true;
return;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)