热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

LaTex中关于字体的一些问题(针对ubuntu系统,中文字体)

LaTex使用之关于中文字体的一些问题(针对ubuntu系统)文章目录LaTex使用之关于中文字体的一些问题(针对ubuntu系统)0.基础一些文件格式一些程序1.字体的设置&#x
LaTex 使用之关于中文字体的一些问题(针对 ubuntu 系统)

文章目录

  • LaTex 使用之关于中文字体的一些问题(针对 ubuntu 系统)
    • 0. 基础
      • 一些文件格式
      • 一些程序
    • 1. 字体的设置(针对中文)
      • 1.1 一些基础
      • 1.2 自定义字体
        • 1.2.1 使操作系统的 fontconfig 库找到 TeX 附带字体
        • 1.2.2 设置 TeX 可以根据字体名找到相应字体


0. 基础


一些文件格式


  • DVI : 最初 TeX 输出格式,不能嵌入字体和图形。也是后来PS、PDF的中间格式。
  • PS : PostScript
  • PDF : 文档

一些程序

关于文件格式转换

  • dvips : 将 DVI 文件转化为 PS 文件
  • ps2pdf : 将 PS 文件转为 PDF 文件
  • dvipdf : 将 DVI 转为 PDF 文件
  • dvipdfm/dvipdfx : dvipdf 的扩展,支持更多的 pdf 功能和字体

关于 TeX 引擎

  • TeX : 最早的 TeX 程序,功能和输出相对单一;ACSII 编码
  • ϵ−TeX\epsilon - TeXϵTeX : 对 TeX 的扩展
  • pdfTeX : 能够直接输出 PDF 文件,但也保留了输出 DVI 的功能;UTF-8 编码
  • LuaTeX : 将 TeX 和脚本语言 Lua 结合起来;UTF-8 编码
  • XeTeX : 将 DVI 格式扩充为更为强大的 xdv 格式,可以直接生成 pdf 文件;UTF-8 编码

1. 字体的设置(针对中文)


1.1 一些基础

TeX 中对于字体的设定包含五个方面:

  • 字号 (font size):字体的大小
  • 字体编码 (font encoding):字体包含的符号,不常用
  • 字体族 (font family):字体的类型(如默认的罗马字体族、无衬线字体族、打字机字体族三类)
  • 字体形状 (font shape):默认字体形状有直立形状、斜体形状、意大利形状、小型大写形状四类
  • 字体系列 (font series):默认字体系列有中等、加粗加宽两类

而对于中文来说,一般主要设定其字体族。在 TeX 中常使用 xeCJK 或 CJK 宏。选择使用中文字体族可以使用如下命令

% windows 常用四种字体族
\CJKfamily{hei} 黑体
\CJKfamily{kai} 楷书
\CJKfamily{song} 宋体
\CJKfamily{fs} 仿宋
% 或使用 ctex 宏包后简化命令
\heiti 黑体
\kaishu 楷书
\songti 宋体
\fangsong 仿宋
\li 隶书
\you 幼圆

以上都是 windows 中预设的 TeX 常用字体,显然有时是不够用的。因此,有时就需要把安装在系统中的一些字体设定为 TeX 可用字体。如何设定,下面有详细描述。先说设定好后,如何使用。

对于中文而言,使用 xeCJK 宏包。字体使用通过如下命令

% 先设置声明
\setCJKmainfont[<可选选项>]{<字体名>} 正文罗马字体族
\setCJKsansfont[<可选选项>]{<字体名>} 无衬线字体族
\setCJKmonofont[<可选选项>]{<字体名>} 打字机字体族
\setCJKfamilyfont{<中文字体族>}[<可选选项>]{<字体名>} 中文字体族设置声明
% 后使用
\CJKfamily{<字体族名>}

说明&#xff1a; xeCJK 宏使用的是 fontspec 对应的中文字体&#xff0c;也就是系统 fontconfig 库所能找到的所有字体。

1.2 自定义字体


1.2.1 使操作系统的 fontconfig 库找到 TeX 附带字体


  • /usr/local/texlive/2020/texmf-var/texlive-fontconfig.conf 改名为 09-texlive.conf &#xff0c;复制到系统的 /etc/fonts/conf.d/ 下&#xff0c;即

    $ sudo cp /usr/local/texlive/2020/texmf-var/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf

  • 刷新 fontconfig 字体缓存&#xff0c;即

    $ sudo fc-cache -fsv

说明&#xff1a;该操作是全局的&#xff0c;系统中其他程序也将可一使用上述配置的字体。

1.2.2 设置 TeX 可以根据字体名找到相应字体


  • 设置 TeX 中 /usr/local/texlive/2020/texmf.cnf配置文件的 osfontdir 路径

    OSFONTDIR &#61; /usr/share/fonts//;/usr/local/share/fonts//;~/.fonts//

注意&#xff1a;在使用字体时&#xff0c;要正确书写字体族名称&#xff0c;而所有字体族名称可以用以下命令列出

fc-list 列出所有&#xff08;输出显示格式为&#xff1a; 字体族中文名&#xff0c;字体族英文名&#xff1a;变体&#xff09;
fc-list :lang&#61;zh 列出中文字体
fc-list -f "%{family}\n" 只列出字体族名


推荐阅读
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • 使用nodejs爬取b站番剧数据,计算最佳追番推荐
    本文介绍了如何使用nodejs爬取b站番剧数据,并通过计算得出最佳追番推荐。通过调用相关接口获取番剧数据和评分数据,以及使用相应的算法进行计算。该方法可以帮助用户找到适合自己的番剧进行观看。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
author-avatar
jimmy岁月_929
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有