QImage旋转而不会丢失信息

时间:2012-08-28 12:03:32

标签: qt qimage

我的GIF格式的大小为12x12的QImage。我想以非常高的频率在某个角度旋转它。我的应用程序涉及一个机器人,所以当它改变方向时(它非常频繁)我的模拟中的QImage也应该旋转,但它会导致信息丢失。我正在做类似下面的事情。

 robot_transform.rotate(angle);
*robot2 = robot->transformed(robot_transform,Qt::SmoothTransformation);
*robot2=  robot2->scaled(12,12, Qt::KeepAspectRatio,Qt::SmoothTransformation);

我需要在这种方法中有错误的建议,其次是否有适合所需应用的其他最佳方法? 感谢

2 个答案:

答案 0 :(得分:1)

我会将源图像的分辨率提高到至少两倍。将图像旋转到非90度角将导致像素信息丢失。较高的资源可以弥补这一点。

大多数基于精灵的动画都会为每个可能的角度使用预渲染图像。

答案 1 :(得分:0)

问题是之后的缩放,你需要裁剪图像的中心。您可以使用QImage::copy执行此操作。