摘要: 一、重绘事件 前面讲到的所有绘制操作都是在重绘事件处理函数paintEvent()中完成的,是QWidget类中定义的函数。一个重绘事件用来重绘一个部件的全部或者部分区域,下面几个原因中的任意一个都会发生重绘事件: repaint()函数或者update()函数被调用; 被隐藏的部件现在被重新显示; 阅读全文
posted @ 2019-06-20 16:39 fengMisaka 阅读(1433) 评论(0) 推荐(1) 编辑
摘要: 一、绘制文字 除了绘制图形以外,还可以使用QPainter::darwText()函数来绘制文字,也可以使用QPainter::setFont()设置文字所使用的字体,使用QPainter::fontInfo()函数可以获取字体的信息,它返回QFontInfo类对象。在绘制文字时会默认使用抗锯齿。 阅读全文
posted @ 2019-06-20 16:36 fengMisaka 阅读(4744) 评论(0) 推荐(3) 编辑
摘要: 一、抗锯齿渲染 1.1 逻辑绘图 图形基元的大小(宽度和高度)始终与其数学模型相对应,下图示意了忽略其渲染时使用的画笔的宽度的样子。 1.2 物理绘图(默认情况) 在默认的情况下,绘制会产生锯齿,并且使用这样的规则进行绘制: 当使用宽度为一个像素的画笔进行渲染时,像素会在数学定义的点的右边和下边进行 阅读全文
posted @ 2019-06-20 15:13 fengMisaka 阅读(7524) 评论(0) 推荐(2) 编辑
摘要: Qt中提供了强大的2D绘图系统,可以使用相同的API在屏幕和绘图设备上进行绘制,它主要基于QPainter、QPaintDevice和QPaintEngine这三个类。它们三者的关系如下图所示: QPainter用来执行绘图操作; QPaintEngine提供了一些接口,可以用于QPainter在不 阅读全文
posted @ 2019-06-20 10:47 fengMisaka 阅读(6819) 评论(0) 推荐(0) 编辑