绘制文本QPainterQPainterPathQBrush

Posted zhangxuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了绘制文本QPainterQPainterPathQBrush相关的知识,希望对你有一定的参考价值。

效果图:

技术分享图片

 

void WgtText::paintEvent(QPaintEvent *event)
{

    QPainter painter(this);
    painter.setRenderHint(QPainter::Antialiasing, true);
    //painter.setPen(QPen(Qt::black, 2));
    painter.setBrush(QBrush(Qt::blue, Qt::SolidPattern));
    //painter.setPen(QPen(Qt::red, 2));

    QFont font;
    font.setFamily("Microsoft YaHei");
    // 大小
    font.setPointSize(20);
    // 斜体
    font.setItalic(true);
    // 设置下划线
    font.setUnderline(true);
    // 设置上划线
    font.setOverline(true);
    // 设置字母大小写
    font.setCapitalization(QFont::SmallCaps);
    // 设置字符间距
    font.setLetterSpacing(QFont::AbsoluteSpacing, 20);
    // 设置加粗
    font.setBold(true);
    // 使用字体
    painter.setFont(font);

    QPainterPath path;
    path.addText(QPointF(100,100), font, "Qt");
    painter.drawPath(path);


    return QWidget::paintEvent(event);

}

=========================================================================================================
效果图:

技术分享图片

 

void WgtText::paintEvent(QPaintEvent *event)
{

    QPainter painter(this);
    painter.setRenderHint(QPainter::Antialiasing, true);
    painter.setPen(QPen(Qt::black, 2));
    //painter.setBrush(QBrush(Qt::blue, Qt::SolidPattern));
    //painter.setPen(QPen(Qt::red, 2));

    QFont font;
    font.setFamily("Microsoft YaHei");
    // 大小
    font.setPointSize(20);
    // 斜体
    font.setItalic(true);
    // 设置下划线
    font.setUnderline(true);
    // 设置上划线
    font.setOverline(true);
    // 设置字母大小写
    font.setCapitalization(QFont::SmallCaps);
    // 设置字符间距
    font.setLetterSpacing(QFont::AbsoluteSpacing, 20);
    // 设置加粗
    font.setBold(true);
    // 使用字体
    painter.setFont(font);

    QPainterPath path;
    path.addText(QPointF(100,100), font, "Qt");
    painter.drawPath(path);


    return QWidget::paintEvent(event);

}

 




以上是关于绘制文本QPainterQPainterPathQBrush的主要内容,如果未能解决你的问题,请参考以下文章

如何绘制文本簇?

绘制文本分类的决策边界

在 UIView 中绘制文本然后清除它然后在不同的地方再次绘制

在图像右上角绘制文本

canvas绘制文本

Android TextView 可绘制,更改可绘制和文本之间的填充?