texlive中文支持

2023-10-29 22:58
文章标签 中文 支持 texlive

本文主要是介绍texlive中文支持,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转自http://blog.sciencenet.cn/blog-350278-700696.html

其他可以参考http://blog.sina.com.cn/s/blog_61f013b801010cdh.html

以及 http://huxuan.org/2012/07/14/chinese-font-problem-of-ctex-in-texlive-under-linux/

需要注意的是,升级系统后有可能会将ctex-xecjk-winfonts.def改成原来的内容,需要我们再次对其进行修改。

1. 更新字体缓存sudo  mkfontscale,sudo mkfontdir,sudo fc-cache -fsv,然后查看添加的字体是否更新,fc-list :lang=zh-cn | sort。

2. 查看并根据生成的 fonts 编辑 ctex-xecjk-winfonts.def,ctex-xecjk-adobefonts.def(adobe的设置与系统字体一致,可不改),sudo  vi /usr/share/texlive/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def

改前ctex-xecjk-winfonts.def:

% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体

%vim:ft=tex

\setCJKmainfont[BoldFont={SimHei},ItalicFont={[simkai.ttf]}]  

  {SimSun}

\setCJKsansfont{SimHei}

\setCJKmonofont{[simfang.ttf]}

\setCJKfamilyfont{zhsong}{SimSun}

\setCJKfamilyfont{zhhei}{SimHei}

\setCJKfamilyfont{zhkai}{[simkai.ttf]}

\setCJKfamilyfont{zhfs}{[simfang.ttf]}

\newcommand*{/songti}{/CJKfamily{zhsong}} % 宋体

\newcommand*{/heiti}{/CJKfamily{zhhei}}   % 黑体

\newcommand*{/kaishu}{/CJKfamily{zhkai}}  % 楷书

\newcommand*{/fangsong}{/CJKfamily{zhfs}} % 仿宋

\newcommand*{/lishu}{/CJKfamily{zhli}}    % 隶书

\newcommand*{/youyuan}{/CJKfamily{zhyou}} % 幼圆

\endinput

改后ctex-xecjk-winfonts.def:

% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体

% vim:ft=tex

\setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi}] {SimSun}

\setCJKsansfont{SimHei}

\setCJKmonofont{FangSong}

\setCJKfamilyfont{zhsong}{SimSun}

\setCJKfamilyfont{zhhei}{SimHei}

\setCJKfamilyfont{zhkai}{KaiTi}

\setCJKfamilyfont{zhfs}{FangSong}

\setCJKfamilyfont{zhli}{LiSu}

\setCJKfamilyfont{zhyou}{YouYuan}

\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体

\newcommand*{\heiti}{\CJKfamily{zhhei}}   % 黑体

\newcommand*{\kaishu}{\CJKfamily{zhkai}}  % 楷书

\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋

\newcommand*{\lishu}{\CJKfamily{zhli}}    % 隶书

\newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆

\endinput

改后ctex-xecjk-adobefonts.def:(Adobe没有隶书和幼圆,须注释掉)

% ctex-xecjk-adobefonts.def: Adobe 的 xeCJK 字体设置,为 Adobe 的四套字体

% vim:ft=tex

\setCJKmainfont[BoldFont=Adobe Heiti Std,ItalicFont=Adobe Kaiti Std]

 {Adobe Song Std}

\setCJKsansfont{Adobe Heiti Std}

\setCJKmonofont{Adobe Fangsong Std}

\setCJKfamilyfont{zhsong}{Adobe Song Std}

\setCJKfamilyfont{zhhei}{Adobe Heiti Std}

\setCJKfamilyfont{zhfs}{Adobe Fangsong Std}

\setCJKfamilyfont{zhkai}{Adobe Kaiti Std}

\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体

\newcommand*{\heiti}{\CJKfamily{zhhei}}   % 黑体

\newcommand*{\kaishu}{\CJKfamily{zhkai}}  % 楷书

\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋

% \newcommand*{\lishu}{\CJKfamily{zhli}}    % 隶书

%\newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆

\endinput

3.例子(利用ctex等宏):
\documentclass[UTF8,adobefonts]{ctexart}
\begin{document}
\zihao {3}
默认字体 defalut fonts \TeX 是一种排版工具 \\
{\bfseries 粗体 bold  \TeX 是一种排版工具} \\
{\songti 宋体 songti  \TeX 是一种排版工具} \\
{\heiti 黑体 heiti  \TeX 是一种排版工具} \\
{\kaishu 楷书 kaishu  \TeX 是一种排版工具} \\
{\fangsong 仿宋 fangsong  \TeX 是一种排版工具} \\

\end{document}

编译:xelatex exam1.tex

NOTE:用pdflatex不可以,中文情况下用xelatex。

这篇关于texlive中文支持的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/303931

相关文章

Redis出现中文乱码的问题及解决

《Redis出现中文乱码的问题及解决》:本文主要介绍Redis出现中文乱码的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 问题的产生2China编程. 问题的解决redihttp://www.chinasem.cns数据进制问题的解决中文乱码问题解决总结

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

Java下载文件中文文件名乱码的解决方案(文件名包含很多%)

《Java下载文件中文文件名乱码的解决方案(文件名包含很多%)》Java下载文件时,文件名中文乱码问题通常是由于编码不正确导致的,使用`URLEncoder.encode(filepath,UTF-8... 目录Java下载文件中文文件名乱码问题一般情况下,大家都是这样为了解决这个问题最终解决总结Java下

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英