我在 QImage 中绘制 WAV 文件的频谱(例如:http ://savepic.net/2350314.jpg )。考虑到良好的时间分辨率,WAV 文件可能足够长而无法放入屏幕。
我需要能够足够快地浏览整个文件,可能不需要文件系统读取操作。
所以我必须在内存中保留大的 QImage 以便快速滚动。另一种设计会更慢,因为每次用户滚动屏幕时都需要我重绘 QImage (QImages)。
假设将大 QImage 保留在内存中(例如 1024x50000),我必须能够在程序窗口中显示该大 QImage 的某些部分。
什么是成本最低的解决方案?使用 QScrollArea 还是使用带有偏移参数的 QPainter 方法 drawImage()?