如何在QPainterPath中描边
How to stroke inside a QPainterPath
本文关键字:QPainterPath 更新时间:2023-10-16
当使用QPen描边QPainterPath时,它会在线的中心描边。我要做的是沿着内的描边的路径。我已经在这里看过一个类似的问题,但它没有提供一个明确的解决方案或例子。
如何在QPainterPath行内描边 ?
这是我能想到的最优雅的解决方案。
static QPolygonF shrinkPolygon(QPolygonF poly, qreal pixels)
{
QPolygonF new_polygon;
QSizeF size = poly.boundingRect().size();
qreal x_center = size.width()/2;
qreal y_center = size.height()/2;
for(int x=0; x < poly.size(); x++)
{
QPointF point = poly.at(x);
if(point.x() < x_center)
{
point.setX(point.x()+pixels);
}
else
{
point.setX(point.x()-pixels);
}
if(point.y() < y_center)
{
point.setY(point.y()+pixels);
}
else
{
point.setY(point.y()-pixels);
}
new_polygon.append(point);
}
return new_polygon;
}
相关文章:
- Write QPainterPath to XML
- 如何将QPixMap转换为QPainterPath,反之亦然
- 有效地在 QPainterPath 周围绘制文本
- 派生的QPainterPath,QPainter性能迅速下降
- QPainterPath QTransform::map
- QVariant conversion to QPainterPath
- 检查QPainterPath中是否存在点
- QPainterPath 和 QPoint 之间的最短距离
- 如何决定由 painter.drawPath(QPainterPath) 绘制的元素类型
- Qt4,QPainterPath的直接分配不起作用(未解决的外部)
- 缩放和移动QPainterPath
- 如何在QPainterPath中描边
- 如何使用QPen与QpainterPath
- Qt QPainterpath.h errors
- QPainterPath文本在打印时呈现错误
- 如何访问 QPainterPath 下的所有像素