在此代码中:
QPainter painter(&image);
// do painting .......
painter.end(); // is this needed?
image.save(tempFileName);
保存QImage之前需要关闭QPainter以便刷新所有更改,还是可以在关闭QPainter对象之前先保存它?
最佳答案
是的,您应该在调用painter.end()
之前先调用image.save()
。 painter.end()
的行为最终取决于在程序运行所在的任何平台上使用的基础绘画引擎。在具有某些Qt版本的某些平台上,您也许可以在image.save()
之前先调用painter.end()
,但是更改平台或Qt版本可能会在以后引起问题。
关于c++ - 在QPainter::end()之前调用QImage::save()是否安全?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13724898/