【Qt】2D绘图之抗锯齿渲染

00. 目录

01. 概述

本部分的内容可以在帮助文档中通过Coordinate System关键字查看。

02. 开发环境

Windows系统:Windows10

Qt版本:Qt5.15或者Qt6

03. 逻辑绘图

图形基元的大小(宽度和高度)始终与其数学模型相对应,下图示意了忽略其渲染时使用的画笔的宽度的样子。
在这里插入图片描述

04. 物理绘图

在默认的情况下.绘制会产生锯齿. 并且使用这样的规则进行绘制: 当使用宽度为一个像素的画笔进行渲染时.像素会在数学定义的点的右边和下边进行渲染,如下图所示。当使用一个拥有偶数像素的画笔进行渲染时,像素会在数学定义的点的周围对称渲染;而当使用一个拥有奇数像素的面笔进行渲染时,首先按照偶数对称绘制,最后一个像素会被渲染到数学定义的点的右边和下边。

在这里插入图片描述
在这里插入图片描述

05. 抗锯齿绘图

抗锯齿( Anti-aliased)又称为反锯齿或者反走样,就是对图像的边缘进行平滑处理,使其看起来更加柔和流畅的一种技术。QPaint er 进行绘制时可以使用QPainter ::RenderHint 渲染提示来指定是否要使用抗锯齿功能,RenderHint 取值分为以下三种。在这里插入图片描述

如果在绘制时使用了抗锯齿渲染提示,即使用 QPainter:: setRenderHint(RenderHint hint, bool on = true) 函数,将参数 hint 设置为了 QPainter:: Antialiasing。那么像素就会在数学定义的点的两侧对称的进行渲染,如下图所示。
在这里插入图片描述

程序示例

QPainter painter(this);
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform); //抗锯齿和使用平滑转换算法

06. 附录

© 版权声明
THE END
喜欢就支持一下吧
点赞141 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容