更改部分字体

更改部分字体

由于我已经厌倦了 Word,所以我尝试使用 LaTeX 模拟 MS Word 2010 的功能。

我正在使用 TexShop,并且我已经能够通过使用 XeTeX 将主字体设置为 Calibri。

如何为每种类型的部分(部分、子部分、子子部分等)设置不同的字体/颜色/大小,而不局限于标准 LaTeX 字体?如果能够像 XeTeX 允许的那样从我的系统中选择任何字体,那就太好了。

我已经尝试过该软件包sectsty,但我无法弄清楚如何使用 Calibri。

答案1

完全控制分区的最佳方法是titlesec使用软件包。这是前三个级别的标准 MSWord 分区的快速版本。要控制颜色,您需要使用软件包xcolor

如果您对不同的部分级别使用不同的字体(不推荐),您应该首先使用fontspec命令\newfontfamily来定义字体,然后在重新定义标题格式时使用该字体,如示例中所示subsubsection

该文档可以使用 XeLaTeX 或 LuaLaTeX 进行编译。

% Compile with XeLaTeX or LuaLaTeX
\documentclass[12pt]{article}
\usepackage[vmargin=1in,hmargin=1.25in]{geometry}
\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{titlesec}
\defaultfontfeatures{Ligatures=TeX}
% Set sans serif font to Calibri
\setsansfont{Calibri}
% Set serifed font to Cambria
\setmainfont{Cambria}
% Define light and dark Microsoft blue colours
\definecolor{MSBlue}{rgb}{.204,.353,.541}
\definecolor{MSLightBlue}{rgb}{.31,.506,.741}
% Define a new fontfamily for the subsubsection font
% Don't use \fontspec directly to change the font
\newfontfamily\subsubsectionfont[Color=MSLightBlue]{Times New Roman}
% Set formats for each heading level
\titleformat*{\section}{\Large\bfseries\sffamily\color{MSBlue}}
\titleformat*{\subsection}{\large\bfseries\sffamily\color{MSLightBlue}}
\titleformat*{\subsubsection}{\itshape\subsubsectionfont}

\begin{document}
\section{A section}
This is some text.
\subsection{A subsection}
\subsubsection{A subsubsection}
\end{document}

代码输出

答案2

使用 KOMA-Script 类(例如scrartcl,标准类的增强型嵌入式替代品)article,您可以使用内置字体元素界面。有两个命令和\setkomafont{element}{font commands}用于\addtokomafont{element}{font commands}设置或扩展元素的字体设置。元素可以是,即,节级别,例如part,,,,,或。sectionsubsectionsubsubsectionparagraphsubparagraph

有了它,您只需要想要的字体和字体支持包lualatexxelatexfontspec以及彩色包装,color或者xcolor。您不需要也不应该使用包来重新定义部分命令。

% Use lualatex or xelatex for this example
\documentclass[12pt]{scrartcl}
\usepackage{fontspec}
\usepackage[svgnames]{xcolor}
\defaultfontfeatures{Ligatures=TeX}
% Set sans serif font to Calibri
\setsansfont{Calibri}
% Set serifed font to Cambria
\setmainfont{Cambria}
% Define a new fontfamily for the subsubsection font
% Don't use \fontspec directly to change the font
\newfontfamily\subsubsectionfont[Color=LightBlue]{TeX Gyre Termes}
\addtokomafont{section}{\color{DarkBlue}}
\addtokomafont{subsection}{\color{MediumBlue}}
\addtokomafont{subsubsection}{\normalfont\itshape\subsubsectionfont}

\begin{document}
\section{A section}
This is some text.
\subsection{A subsection}
\subsubsection{A subsubsection}
\end{document}

示例图片

有关可用元素的更多信息,请参阅 KOMA-Script 手册,scrguien.pdf(英语)或scr指南.pdf(德语)。

顺便说一句:我不建议混合使用不同的罗马字体,就像我使用 Cambria 和 TeX Gyre Termes 一样。

相关内容