CentOS 上 LibreOffice 字体安装与中文显示修复
一 准备与检查
- 安装字体与配置工具,并确认系统已有字体列表:
- 安装:sudo yum -y install fontconfig ttmkfdir
- 查看:fc-list(若无输出或缺少中文字体,继续下一步)
- 若在无图形界面的服务器环境,建议安装 LibreOffice 组件以便命令行转换:
- 安装:sudo yum -y install libreoffice-headless libreoffice-writer
- 验证版本:libreoffice --version
- 说明:本文以LibreOffice为准(常被误写为“LibOffice”)。以上工具用于字体管理与无头转换场景。
二 安装常用中文字体
- 推荐将字体放入系统字体目录并重建索引,便于所有用户与 LibreOffice 使用:
- 复制字体(示例为常用的宋体/仿宋/黑体/楷体):
- sudo mkdir -p /usr/share/fonts/zh_CN
- 将 Windows 的 simsun.ttc、simfang.ttf、simhei.ttf、simkai.ttf 等拷贝到该目录
- 设置权限并重建索引:
- sudo chmod -R 644 /usr/share/fonts/zh_CN
- cd /usr/share/fonts/zh_CN && sudo mkfontscale && sudo mkfontdir
- sudo fc-cache -fv
- 验证安装结果:
- 列出中文字体:fc-list :lang=zh | grep -i “simsun|simfang|simhei|simkai”
- 说明:将字体放入 /usr/share/fonts 并更新缓存是最通用、最稳妥的做法。
三 服务器无头转换与常见报错处理
- 无头转 PDF 的基本用法:
- 命令:libreoffice --headless --convert-to pdf /path/file.docx --outdir /path/out
- 若提示缺少 writer 模块:sudo yum -y install libreoffice-writer
- 常见报错与修复:
- 报错“source file could not be loaded”:安装 writer 组件后重试
- 报错“libcairo.so.2: cannot open shared object file”:安装 cairo 相关库(如 sudo yum install cairo),再重试
- 转换后中文仍乱码:回到第二节确认字体已安装、缓存已刷新,并再次转换测试
四 进阶配置与排错
- 字体别名与替换(解决文档指定字体缺失时的回退):
- 快速自检清单:
- 系统层面:fc-list :lang=zh 能看到已安装的中文字体
- LibreOffice 层面:在文档中选用该字体,或用命令行转换 PDF 验证显示效果
- 版本与迁移提示:
- CentOS 7 已于 2024-06-30 停止维护,若长期维护与兼容性需求较高,建议迁移至仍受支持的 RHEL/SLES 等发行版。