QT反锯齿

在用GDI+绘图时候,发现发大的png不会有锯齿,很漂亮,但是在qt中却有锯齿现象,因此网上查了一下,得到如下,确实有用,但还是不够gdi+平滑,由于贴图,因此用到了SmoothPixmapTransform

http://blog.chinaunix.net/uid-24219701-id-4044333.html

反走样是图形学中的重要概念,用以防止通常所说的“锯齿”现象的出现。很多系统的绘图 API 里面都内置了有关反走样的算法,不过由于性能问题,默认一般是关闭的,Qt 也不例外。

------------------------------------
QPainter::Antialiasing           告诉绘图引擎应该在可能的情况下进行边的反锯齿绘制
QPainter::TextAntialiasing       尽可能的情况下文字的反锯齿绘制
QPainter::SmoothPixmapTransform  使用平滑的pixmap变换算法(双线性插值算法),而不是近邻插值算法
------------------------------------

painter.setRenderHint(QPainter::Antialiasing, true);

我们通过这条语句,将Antialiasing属性(也就是反走样)设置为 true。经过这句设置,我们就打开了QPainter的反走样功能。

 

由于反走样需要比较复杂的算法,在一些对图像质量要求不是很高的应用中,是不需要进行反走样的。为了提高效率,一般的图形绘制系统,都是默认不进行反走样的。
 



你可能感兴趣的:(QT)