Qt-使用QString输出数字上标(不要再用x2或x^2表示平方啦)

简介: Qt-使用QString输出数字上标(不要再用x2或x^2表示平方啦)

场景需求

      数学与我们的工作生活息息相关,平方、次方的概念,也经常出现在我们的工作中。为了更好地展示数学公式中的次方,word、wps有了公式编辑器,通过公式编辑器可以写出漂亮的数学公式,在csdn中编辑文章,同样也支持公式编辑器,这给广大创作者提供了巨大的便利。


      然而在编程中,次方作为一种数字上标,想要以字符形式展示出来,就没有那么方便了。一些常用的字符如数字、大小写字母等,是可以通过ASCII码直接输出的,而数字上标这种特殊的符号,则可以通过Unicode表示。


      Unicode是为了解决传统字符编码的局限性而产生,为每种语言中每个字符设定了统一且唯一的二进制编码,且满足跨语言、跨平台的文本转换。


      本文将教会大家如何在Qt中通过Unicode的utf8实现,将数字上标以字符形式显示在开发的软件中。


获取数字上标的Unicode

      想要数字上标,自然要先寻找数字上标的Unicode,推荐一个网站可以查到各个字符的Unicode码,该网站还很贴心的提供了各个语言的支持。

     

       比如数字上标4是2074,可以想查字典一样,找到它所在的位置,点击还可以便捷拷贝不同语言的支持,比如我用C++编,那我就复制\xE2\x81\B4。

       为了方便大家,我把数字0-10的码整理了一下。

数字 Unicode C/C++
0 2070 \xE2\x81\xB0
1 00B9 \xC2\xB9
2 00B2 \xC2\xB2
3 00B3 \xC2\xB3
4 2074 \xE2\x81\xB4
5 2075 \xE2\x81\xB5
6 2076 \xE2\x81\xB6
7 2077 \xE2\x81\xB7
8 2078 \xE2\x81\xB8
9 2079 \xE2\x81\xB9

测试1

      我想输出“10乘x的0次方加上5乘x的4次方”,当数字上标0和4确认好了后,通过QString的fromUtf8函数将字符串处理下,如下:

QString str = QString::fromUtf8("10x\xE2\x81\xB0+5x\xE2\x81\xB4");
ui->label->setText(str);

      写了个Demo测试,点击输出按钮,下方字符串刷新。效果图如下所示:

 

测试2

      我想输出“10乘x的0次方加上5乘x的45次方”,当数字上标0、4和5确认好了后,通过QString的fromUtf8函数将字符串处理下,如下:

QString str = QString::fromUtf8("10x\xE2\x81\xB0+5x\xE2\x81\xB4\xE2\x81\xB5");
ui->label->setText(str);

     4和5的数字上标挨着写即可,点击输出按钮,下方字符串刷新。效果图如下所示:

      如果我的代码有什么问题,欢迎大家提出异议批评指正,一同进步~

      如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!

相关文章
|
6月前
|
C语言 容器
【qt】QString字符串2
【qt】QString字符串2
30 0
|
6月前
|
C++
【qt】QString字符串1
【qt】QString字符串1
48 0
Qt 之 QDebug,QString
Qt 之 QDebug,QString
74 0
|
6月前
【QFileDialog接口大全】 Qt5 QString类使用示例
【QFileDialog接口大全】 Qt5 QString类使用示例
41 1
|
6月前
QT去除QString字符串中空格的方法
QT去除QString字符串中空格的方法
234 0
|
6月前
|
C++
Qt定义属性类信息报错‘Qstring‘ was not declared in this scope; did you mean ‘xxx‘?并且还有有一堆报错,问题还出现在moc文件
Qt定义属性类信息报错‘Qstring‘ was not declared in this scope; did you mean ‘xxx‘?并且还有有一堆报错,问题还出现在moc文件
102 0
|
6月前
qt初入门0:结构体中QString用memset导致崩溃分析及QLatin1String简单查看源码
qt初入门0:结构体中QString用memset导致崩溃分析及QLatin1String简单查看源码
300 0
|
6月前
|
存储 自然语言处理 API
QT基础教程(QDebug和QString)
QT基础教程(QDebug和QString)
160 0
《QT从基础到进阶·一》QString字符串常用方式
《QT从基础到进阶·一》QString字符串常用方式
118 0
下一篇
无影云桌面