我尝试drawRoundedRect
直接在 a 中使用方法绘制一个圆形矩形QPixmap
(这里没有渲染引擎涉及纯 Qt 一个......),我仔细检查了矩形的大小与我的像素图的大小:
Pixmap : QSize(50, 73)
Rectangle: QRect(0,0 48x11)
看到足够的空间...
编辑:一些代码
pixmap = QPixmap(50,73); //example size that match my case
QRectF rect(0,0,48,11);
QPainter painter(&pixmap);
painter.setRenderHint(QPainter::TextAntialiasing);
painter.setWorldMatrixEnabled(false);
painter.setPen(QPen()); //no pen
painter.setBrush(QBrush(color));
painter.drawRoundedRect(rect, 2.0, 2.0);
- 我禁用了世界转换...
- 我将集合转换设置为统一...
- 我尝试了几个半径(1.0,2.0,3.0,4.0)...
- 我改变笔宽,画笔颜色......
但它总是以一个有 4 个不同角的矩形结束!像那样 :
我直接将像素图输出到一个文件中,以确保在显示过程中没有刮掉它……相同的形状。
有人知道小半径的Qt圆形矩形吗?我很久以前就看到了它的东西,但我不记得如何处理它!