使用包机套餐时不显示希腊字母

使用包机套餐时不显示希腊字母

我下载了 CMU Serif 字体到我的笔记本电脑上,但当我插入 charter 包时(因为我想用它写英文粗体文本),常规希腊字母没有显示。这是我的代码

\usepackage{lmodern}
\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text}
\usepackage[T1]{fontenc}
\usepackage{charter}
\setmainfont{CMU Serif} 
\usepackage{lipsum}

\begin{document} 
\chapter{Chapter 1}
This is a Greek text "Ελλάδα" and this is a {\fontfamily{bch}\bfseries\selectfont bold} text
\end{document}

这是我的第一个问题。第二个问题是,有谁知道希腊字母是否有宪章字符?

答案1

如果我在\begin{document}魔法代码后插入

\expandafter\show\the\font

XeTeX 的答案是

\T1/CMUSerif(0)/m/n/10=select font ecrm1000

这是什么意思?

  • T1是当前输出编码
  • CMUSerif(0)是当前字体系列
  • ecrm1000是相应字体文件的名称

在此之前,你还可以获得

LaTeX Font Warning: Font shape `T1/CMUSerif(0)/m/n' undefined
(Font)              using `T1/cmr/m/n' instead on input line 7.

警告你\setmainfont{CMU Serif}基本上没有效果。嗯它有lmodern一些效果:它撤消由和所做的任何设置charter

请注意,它们都不lmodern兼容charter(Xe|Lua)LaTeX/ fontspec。如果你想要将其CMU Serif作为主字体,只需声明它:

\documentclass{book}
\usepackage{fontspec}
\setmainfont{CMU Serif}

\begin{document}

\chapter{Chapter 1}
This is a Greek text ``Ελλάδα''

\end{document}

enter image description here

如果您希望将 Charter 作为主要字体,则应该拥有一个支持希腊语的版本。TeX Live 分发的 XCharter 字体不支持。

相关内容