【问题标题】:how to use mirrored text in QtQt中如何使用镜像文本
【发布时间】:2023-02-07 08:16:08
【问题描述】:

代码示例

type here
void MainWindow::paintEvent(QPaintEvent *event){
   QPainter chartPainter;
   QPointF qChart;
   QFont font;

   chartPainter.begin(this);
   qChart = QPointF(100, 100); // x postion, y position

    chartPainter.drawText(qChart, "A", 0, 0);
}

如何在 Qt 中将字母“A”显示为镜像文本? 如何将镜像文本应用于所有文本,而不仅仅是“A”?

QImage有一个叫做mirrored的函数可以应用。但是,使用QPainter的方法,查找了也没有找到。

有没有一种方法可以用 QPainter 或其他方式实现?

【问题讨论】:

  • 你在模仿字母、单词或句子吗?字母'A' 是对称的。尝试使用其他字母,例如 EC。您是在说垂直镜像就像颠倒打印一样吗?

标签: c++ qt


【解决方案1】:

您需要设置 QPainter 对象的 Qt::TextDirection 属性。

将这些添加到您的代码中:

painter.setLayoutDirection(Qt::RightToLeft);
painter.drawText(rect, Qt::AlignRight, tr("Text goes here"));

【讨论】:

    猜你喜欢
    • 2010-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-13
    • 2017-07-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多