我正在 Qt 中创建一个应用程序,类似于 scribble(在示例应用程序中给出)。目的是让用户徒手绘制,一旦完成,将这些绘图上传到网上。截至目前,我每 5 秒将绘图保存为 PNG 图像,以便在意外关闭时数据丢失最小(我保留 5 秒以最小化写入操作;非常需要实时) .
但问题是,我每 5 秒将整个页面保存为图像,其中添加的新数据可能只有几个像素。我想知道我是否可以只写入添加到磁盘中的新像素;没有限制我应该在保存时使用 PNG;当用户说他完成时,我可以在最后将数据转换为 PNG。
保存非常基本的一段代码;
void SaveData(const QString &fileName, const char *fileFormat, QImage image)
{
mutex.lock();
QImage visibleImage = image;
if (visibleImage.save(fileName, fileFormat, 50))
{
system("sync");
mutex.unlock();
return true;
} else {
mutex.unlock();
return false;
}
}
我只是想知道如果可能的话,如果可能的话,是否实时保存像素被添加..!
提前致谢
丹麦