开发板目录 /usr/lib/fonts/ 中的字体文件 msyh.ttc 的介绍【微软雅黑(Microsoft YaHei)】

本文是博文 https://blog.csdn.net/wenhao_ir/article/details/145433648 的延伸扩展。

本文是博文 https://blog.csdn.net/wenhao_ir/article/details/145433648 的延伸扩展。

问:运行 ls /usr/lib/fonts/ 发现有一个名叫 msyh.ttc 的字体文件,能介绍下msyh.ttc不?

msyh.ttc微软雅黑(Microsoft YaHei) 字体的 TrueType Collection (TTC) 格式文件。它是 Windows 操作系统中常见的 中文无衬线字体,专门设计用于清晰地显示简体中文文本,当然也能显示英文。


1. msyh.ttc 详细信息

  • 字体名称:微软雅黑(Microsoft YaHei)
  • 文件格式:TTC(TrueType Collection)
  • 适用语言:简体中文、英文
  • 提供商:微软(Microsoft)
  • 文件位置
    • Windows :通常位于 C:\Windows\Fonts\msyh.ttc
    • Linux :如果你在 /usr/lib/fonts/ 发现了 msyh.ttc,可能是手动复制或安装的

2. TTC(TrueType Collection)是什么?

.ttcTrueType Collection (TrueType 字体集)格式,它允许多个 TrueType 字体 共用一个文件。相比单个 .ttf,TTC 主要用于:

  • 减少磁盘占用(多个相似字体共享字形数据)
  • 提供多个字体变体 (如 Regular、Bold 等)

通常 msyh.ttc 里面包含:

  1. 微软雅黑 Regular(普通字体)
  2. 微软雅黑 Bold(加粗字体)
  3. 可能包含其他变体

3. msyh.ttc 在 Linux 的应用

如果 Qt 运行环境设置了:

sh 复制代码
export QT_QPA_FONTDIR=/usr/lib/fonts/

那么 Qt 应用会自动从 /usr/lib/fonts/ 目录加载 msyh.ttc 作为默认字体。

如果想手动测试字体,可以用 fc-list 命令检查:

sh 复制代码
fc-list | grep msyh

如果输出类似:

/usr/lib/fonts/msyh.ttc: Microsoft YaHei,微软雅黑:style=Regular

说明系统成功识别了 msyh.ttc

如果想让 msyh.ttc 在 Qt 里生效,可以在代码里指定:

cpp 复制代码
QFont font("Microsoft YaHei", 12);
QApplication::setFont(font);

或者如果 msyh.ttc 不能被系统识别,你可以手动加载:

cpp 复制代码
int fontId = QFontDatabase::addApplicationFont("/usr/lib/fonts/msyh.ttc");
QStringList fontFamilies = QFontDatabase::applicationFontFamilies(fontId);
if (!fontFamilies.isEmpty()) {
    QFont font(fontFamilies.at(0));
    QApplication::setFont(font);
}

4. 如何在 Linux 上安装 msyh.ttc

如果 msyh.ttc 还没有安装,你可以:

  1. 从 Windows 复制

    • 进入 C:\Windows\Fonts\
    • 复制 msyh.ttc 到 Linux /usr/lib/fonts//usr/share/fonts/truetype/
    • 运行 fc-cache -fv 更新字体缓存
  2. 检查字体是否生效

    sh 复制代码
    fc-list | grep "Microsoft YaHei"

5. msyh.ttcmsyh.ttf 的区别

  • msyh.ttc 是字体集合,通常包含多个变体(Regular、Bold)
  • msyh.ttf 是单个 TrueType 字体 ,只包含 RegularBold 其中一种

结论

  1. msyh.ttc 是微软雅黑字体,适用于中文和英文。
  2. 它是 TrueType Collection (TTC) 格式,包含多个字体变体。
  3. 在 Qt/Linux 上可以直接使用 ,但有时需要 fc-cache -fv 刷新字体缓存。
  4. 如果 msyh.ttc 存在于 /usr/lib/fonts/,Qt 应用可能已经在使用它作为默认字体
相关推荐
yann_qu5 个月前
Microsoft Word使用公式字体Latin Modern Math时导出pdf显示异常
pdf·word·font·formula
蔡斯达纳7 个月前
Ubuntu添加系统字体
linux·ubuntu·字体·font
艾恩小灰灰9 个月前
深入解析CSS3 @font-face 规则:自定义与网络字体全面指南
前端·css·css3·font·font-face·自定义字体·网络字体使用
bcbobo21cn1 年前
C# 字体大小的相关问题
开发语言·c#·font·字体大小
winfredzhang1 年前
使用adobe font style 工具绘制的艺术字,请鉴赏。
adobe·font
HackerTom1 年前
power point导出pdf保留字体
pdf·powerpoint·font
梁辰兴1 年前
CSS 字体:Font
前端·css·字体·属性·font