Qt::工程框架-导出图片-render

二维矢量动画智能制作软件开发合集

链接:软件开发技术分享及记录合集

个人开发二维矢量动画智能制作软件界面如下:

目录

一、导出图片原理

二、导出图片代码实现

三、导出图片软件测试视频

结束语


一、导出图片原理

工程框架中包括导出图片,快捷键设置为ctrl + r,导出界面如下:

Qt::工程框架-导出图片-render_第1张图片

图片的长宽根据工程系统设置,设置后对相机进行调整,导出图片则对相机范围内的对象进行渲染,实现方法就通过在QGraphicsScene的render实现(使用方法及参数详见Qt官方文件),其中需要引入QPainter来绘制,本软件采用QPixmap作为绘制设备,后续根据实际需求转化为PNG、JPG或BMP格式。

Ps,1)每一帧都可导出为图片;2)因为采用矢量绘制,所以导出图片清晰度可通过对象缩放、相机缩放等操作。3)一旦以图片形式,则有失真效果。所以工程长宽要设置好。

二、导出图片代码实现

.h文件变量申明:

qreal projectWidth,projectHeight;

QGraphicsItem *workspaceGround

QPixmap pix = QPixmap(projectWidth,projectHeight);
pix.fill(Qt::transparent);
QPainter painter(&pix);
render(&painter,QRectF(0,0,projectWidth,projectHeight),workspaceGround->parentItem()->mapToScene(QRectF(workspaceGround->pos().x()-projectWidth/2,workspaceGround->pos().y()-projectHeight/2,projectWidth,projectHeight)).boundingRect());

三、导出图片软件测试视频

导出图片


结束语

本文简要梳理了软件【导出图片】的实现框架,内容均为原创。

作者文笔水平一般,请大家多多包涵和指正,十分欢迎进一步交流学习。

若需,请联系本人小红书(小红书号:YzLab96),谢谢。

链接:  软件开发及测试所有视频合集见小红书​​​​​​​

你可能感兴趣的:(二维矢量动画软件,qt,开发语言,c++,个人开发,动画)