如何在QML中保存QtGraphicalEffects应用的效果



我有一个基于QML的应用程序,它将提供基本的图像编辑。我已经实现了裁剪,现在我想添加QtGraphicalEffects提供的效果。我已经将效果添加到QML中,并添加了相应的滑块,这样我就可以将效果添加在我的图像中,效果很好。

然而,我的问题是,如何将这些效果保存回图像文件?问题是,我正在缩小图像以适应屏幕尺寸,因此,直接从QML/javascript保存会导致缩小图像。

对于裁剪部分,我已经解决了这个问题,方法是在C++中进行裁剪,重新打开未缩放的原始图像,并将裁剪应用于原始图像。

我可以在QML中做类似的事情吗?例如,当按下保存按钮时,以原始大小再次渲染原始图像(屏幕外,因此不可见(,应用效果,然后保存?这可能吗?

您应该能够使用具有Item::visible: false的未缩放Image,渲染所有效果,然后在生成的渲染中使用Item::grabToImage来保存结果。

您可以使用Image::implicitWidthImage::implicitHeight来获得原始Image的原始高度和宽度(在缩放之前(。

相关内容

  • 没有找到相关文章

最新更新