首页 > 系统相关 >Linux下切换qt程序的字母库

Linux下切换qt程序的字母库

时间:2024-04-23 11:33:28浏览次数:26  
标签:俄语 qt 字母 ret 字体库 切换 Linux font

问题:   在程序切换俄语时字符串都显示空白 , 说明系统中未有俄语字体库 , 先下载一个带有俄语的字体库 , 直接放在/usr/lib/fonts/目录下.
      俄语可以正常切换显示之后,却改变了其他语言的字体格式

解决:      需要在切换语言时也动态切换原始字体库和俄语字体库
   

//qt全局窗口资源
#define qApp (static_cast<QApplication *>(QCoreApplication::instance()))

void translateAllStr(bool isWrite)
{
    // 读取或写入语言序号
    readWriteLangID(isWrite);

    int ret;
    QFontDatabase database;
    if(g_byCurLng == 3)//语言是俄语时
    {
        ret = database.addApplicationFont(":/arial.ttf");//qt资源中的俄语字库,也可放在/usr/lib/fonts/目录下
    }
    else
    {
        ret = database.addApplicationFont("/usr/lib/fonts/simsun.ttc");//原俄语字库
    }
    if (ret < 0)
    {
        qDebug("Font not added!");
    }
    else
    {
        QFont font;
        font.setFamily(QFontDatabase::applicationFontFamilies(ret).at(0));
        qApp->setFont(font);
    }

}

 

标签:俄语,qt,字母,ret,字体库,切换,Linux,font
From: https://www.cnblogs.com/mjj1024/p/18152439

相关文章

  • win7专业版挂载Linux文件夹作为盘符
    win7专业版挂载Linux文件夹作为盘符1.安装包下载路径:vcredist_x86.exe等文件https://www.alipan.com/s/NHQN82NEsGi2.操作步骤1、执行NFSClient安装包看是否需要,.net4.0的环境,2、 需要的话执行doNetFx40_Full,安装.net4.0环境,然后执行vcredist安装c++环境3、 再次重新......
  • 固定组合字母的象形含义
    目录ain自己tr、str、dr、br拽,拖,抽,分开wr拧fl飞,流th伸出,指向st停,站shs表发出、sh表射出ch=c抓住、切分、掌握sp发出,散开pl平整的,平的sw蜿蜒的水、摇摆,摇动sl展开,滑,猛然用力英语单词由26字母构成,26个字母都有各自的意义,同样,某些固定的字母组合也有着固定的意思,透......
  • Nexpose v6.6.247 for Linux & Windows - 漏洞扫描
    Nexposev6.6.247forLinux&Windows-漏洞扫描Rapid7VulnerabilityManagement,ReleaseApr17,2024请访问原文链接:Nexposev6.6.247forLinux&Windows-漏洞扫描,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org您的本地漏洞扫描程序搜集通过实时......
  • Metasploit Pro 4.22.3-2024041701 (Linux, Windows) - 专业渗透测试框架
    MetasploitPro4.22.3-2024041701(Linux,Windows)-专业渗透测试框架Rapid7Penetrationtesting,ReleaseApr17,2024请访问原文链接:MetasploitPro4.22.3-2024041701(Linux,Windows)-专业渗透测试框架,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org世......
  • linux系统是未来_大小写敏感_case_sensitive_编程原生态
    修改py文件......
  • linux-rpm包管理-命名-管理
    1.RPM基础概述RPM全称RPMPackageManager缩写,由红帽开发用于软件包的安装,升级卸载与查询为什么要学rpm就像在windows系统中一样,如果你想要安装一个QQ,安装一个微信,安装一款游戏,首先要去该软件的官网上去下载相关的软件包,通常都是.exe的安装包。还有那种绿色软件包,一下......
  • visual studio连接linux编码
    该操作最好是在root用户下进行,请确保你的linux里已经修改过root用户的权限修改ubuntu里root用户权限Linux安装远程调试ubuntu下安装如下:sudoapt-getinstallopenssh-serverg++gdbgdbserverLinux设置远程调试ssh允许root登录默认情况安装完SSH服务并开启,root是不允......
  • Linux系列教程——Linux基本权限、Linux特殊权限、LinuxACL控制、Linux输入输出
    @目录1Linux基本权限1.权限基本概述1.什么是权限?2.为什么要有权限?3.权限与用户之间的关系?4.权限中的rwx分别代表什么含义?2.权限设置示例1.为什么要设定权限,我们又如何修改一个文件的权限?2.使用chmod设定权限示例3.权限设置案例3.权限设置案例4.属主属组设置2Linux特殊权限1.特......
  • Linux高级变量
    高级变量赋值[umpay@ansible-hostcheck_sub]$title=ceo[umpay@ansible-hostcheck_sub]$name=${title-mage}[umpay@ansible-hostcheck_sub]$echo$nameceo[umpay@ansible-hostcheck_sub]$title=[umpay@ansible-hostcheck_sub]$name=${title-mage}[umpay@ansible......
  • linux定时任务配置
    1.查看是否安装了crontabservicecrondstatus2.创建要定时执行的脚本test.sh(注:所有的路径都写绝对路径,包括输出日志的路径,否则执行可能会有问题)#!/bin/bashecho"大家好">>/home/kavins.logecho"执行时间为:`date`">>/home/kavins.log3.配置定时任务:crontab-e......