当前位置: 首页 > news >正文

开发板目录 /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 运行环境设置了:

export QT_QPA_FONTDIR=/usr/lib/fonts/

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

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

fc-list | grep msyh

如果输出类似:

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

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

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

QFont font("Microsoft YaHei", 12);
QApplication::setFont(font);

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

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. 检查字体是否生效

    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 应用可能已经在使用它作为默认字体

相关文章:

开发板目录 /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 的字体文件,能介绍…...

Love Tester:探索爱情的深度与维度

爱情是什么?是相互帮助、耐心、理解、鼓励、保护、可靠和牺牲。Love Tester 通过先进的算法,分析名字的兼容性和关系的潜力,帮助你计算爱情匹配的准确性。 相互帮助:在伴侣遇到困难时伸出援手,这是爱情的体现。耐心&a…...

BFS(广度优先搜索)——搜索算法

BFS,也就是广度(宽度)优先搜索,二叉树的层序遍历就是一个BFS的过程。而前、中、后序遍历则是DFS(深度优先搜索)。从字面意思也很好理解,DFS就是一条路走到黑,BFS则是一层一层地展开。…...

JVM 四虚拟机栈

虚拟机栈出现的背景 由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多…...

【R语言】获取数据

R语言自带2种数据存储格式:*.RData和*.rds。 这两者的区别是:前者既可以存储数据,也可以存储当前工作空间中的所有变量,属于非标准化存储;后者仅用于存储单个R对象,且存储时可以创建标准化档案&#xff0c…...

Java BIO详解

一、简介 1.1 BIO概述 BIO(Blocking I/O),即同步阻塞IO(传统IO)。 BIO 全称是 Blocking IO,同步阻塞式IO,是JDK1.4之前的传统IO模型,就是传统的 java.io 包下面的代码实现。 服务…...

统计满足条件的4位数(信息学奥赛一本通-1077)

【题目描述】 给定若干个四位数,求出其中满足以下条件的数的个数:个位数上的数字减去千位数上的数字,再减去百位数上的数字,再减去十位数上的数字的结果大于零。 【输入】 输入为两行,第一行为四位数的个数n&#xff0…...

北京门头沟区房屋轮廓shp的arcgis数据建筑物轮廓无偏移坐标测评

在IT行业中,地理信息系统(GIS)是用于处理、分析和展示地理空间数据的重要工具,而ArcGIS则是GIS领域中的一款知名软件。本文将详细解析标题和描述中提及的知识点,并结合“门头沟区建筑物数据”这一标签,深入…...

Spring 面试题【每日20道】【其三】

1、Spring 中的 Profile 注解的作用是什么? 中等 Profile 注解在Spring框架中用于根据不同的环境配置文件(profiles)来激活或忽略某些Bean的注册。它允许开发者定义逻辑以区分不同环境下的bean定义,例如开发、测试和生产环境。 …...

FFmpeg(7.1版本)在Ubuntu18.04上的编译

一、从官网上下载FFmpeg源码 官网地址:Download FFmpeg 点击Download Source Code 下载源码到本地电脑上 二、解压包 tar -xvf ffmpeg-7.1.tar.xz 三、配置configure 1.准备工作 安装编译支持的软件 ① sudo apt-get install nasm //常用的汇编器,用于编译某些需要汇编…...

Apache Hudi数据湖技术应用在网络打车系统中的系统架构设计、软硬件配置、软件技术栈、具体实现流程和关键代码

网络打车系统利用Hudi数据湖技术成功地解决了其大规模数据处理和分析的难题,提高了数据处理效率和准确性,为公司的业务发展提供了有力的支持。 Apache Hudi数据湖技术的一个典型应用案例是网络打车系统的数据处理场景,具体如下: 大…...

安全策略配置

需求: 1、VLAN 2属于办公区;VLAN 3属于生产区 2、办公区PC在工作日时间(周一至周五,早8到晚6)可以正常访问0A Server,其他时间不允许 3、办公区PC可以在任意时刻访问web server 4、生产区PC可以在任意时刻访问0A Server,但是不能访问Web serv…...

c++ stl 遍历算法和查找算法

概述&#xff1a; 算法主要由头文件<algorithm> <functional> <numeric> 提供 <algorithm> 是所有 STL 头文件中最大的一个&#xff0c;提供了超过 90 个支持各种各样算法的函数&#xff0c;包括排序、合并、搜索、去重、分解、遍历、数值交换、拷贝和…...

【Envi遥感图像处理】008:波段(批量)分离与波段合成

文章目录 一、波段分离提取1. 提取单个波段2. 批量提取单个波段二、波段合成相关阅读:【ArcGIS微课1000例】0058:波段合成(CompositeBands)工具的使用 一、波段分离提取 1. 提取单个波段...

线程创建与管理 - 创建线程、线程同步(C++)

前言 在现代软件开发中&#xff0c;线程的创建和管理是并发编程的核心内容之一。通过合理地创建和管理线程&#xff0c;可以有效提高程序的响应速度和资源利用率。本文将详细讲解如何在C中创建线程&#xff0c;并探讨几种常见的线程同步机制。我们假设读者具备一定的C基础&…...

【C语言篇】“三子棋”

一、游戏介绍 三子棋&#xff0c;英文名为 Tic - Tac - Toe&#xff0c;是一款简单而经典的棋类游戏。游戏在一个 33 的棋盘上进行&#xff0c;两名玩家轮流在棋盘的空位上放置自己的棋子&#xff08;通常用 * 和 # 表示&#xff09;&#xff0c;率先在横、竖或斜方向上连成三个…...

安培定律应用于 BH 曲线上的工作点

在本篇博文中&#xff0c;我将展示如何应用安培定律来确定磁芯包裹的导体必须承载多少电流才能从 BH 值工作点获得 B 值&#xff0c;该工作点对应于磁芯材料中的最大 B 值。我在 BH 曲线上使用两个工作点&#xff0c;一个在线性区域&#xff0c;另一个在饱和区域。 安培定律 H…...

深度求索DeepSeek横空出世

真正的强者从来不是无所不能&#xff0c;而是尽我所能。多少有关输赢胜负的缠斗&#xff0c;都是直面本心的搏击。所有令人骄傲振奋的突破和成就&#xff0c;看似云淡风轻寥寥数语&#xff0c;背后都是数不尽的焚膏继晷、汗流浃背。每一次何去何从的困惑&#xff0c;都可能通向…...

【CSS】什么是响应式设计?响应式设计的基本原理,怎么做

在当今多设备、多屏幕尺寸的时代&#xff0c;网页设计面临着前所未有的挑战。传统的固定布局已无法满足用户在不同设备上浏览网页的需求&#xff0c;响应式设计&#xff08;Responsive Web Design&#xff09;应运而生&#xff0c;成为网页设计的趋势和标准。本文将深入探讨响应…...

后盾人JS--继承

继承是原型的继承 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </hea…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1&#xff1a;修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本&#xff1a;CentOS 7 64位 内核版本&#xff1a;3.10.0 相关命令&#xff1a; uname -rcat /etc/os-rele…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术&#xff0c;通过密码学、共识机制和智能合约等核心组件&#xff0c;实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点&#xff1a;数据存储在网络中的多个节点&#xff08;计算机&#xff09;&#xff0c;而非…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)

引言 在嵌入式系统中&#xff0c;用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例&#xff0c;介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单&#xff0c;执行相应操作&#xff0c;并提供平滑的滚动动画效果。 本文设计了一个…...

Qwen系列之Qwen3解读:最强开源模型的细节拆解

文章目录 1.1分钟快览2.模型架构2.1.Dense模型2.2.MoE模型 3.预训练阶段3.1.数据3.2.训练3.3.评估 4.后训练阶段S1: 长链思维冷启动S2: 推理强化学习S3: 思考模式融合S4: 通用强化学习 5.全家桶中的小模型训练评估评估数据集评估细节评估效果弱智评估和民间Arena 分析展望 如果…...

linux设备重启后时间与网络时间不同步怎么解决?

linux设备重启后时间与网络时间不同步怎么解决&#xff1f; 设备只要一重启&#xff0c;时间又错了/偏了&#xff0c;明明刚刚对时还是对的&#xff01; 这在物联网、嵌入式开发环境特别常见&#xff0c;尤其是开发板、树莓派、rk3588 这类设备。 解决方法&#xff1a; 加硬件…...

WEB3全栈开发——面试专业技能点P8DevOps / 区块链部署

一、Hardhat / Foundry 进行合约部署 概念介绍 Hardhat 和 Foundry 都是以太坊智能合约开发的工具套件&#xff0c;支持合约的编译、测试和部署。 它们允许开发者在本地或测试网络快速开发智能合约&#xff0c;并部署到链上&#xff08;测试网或主网&#xff09;。 部署过程…...