采用 Trajan 字体的标题

采用 Trajan 字体的标题

我打算只将 Trajan 字体用于论文的章节标题(因此,不是章节标题等)。我使用的是以前的学生提供的模板,这是有关章节标题的部分:

%% Check for fancychap flag and change chapter default if true
\ifthenelse{\boolean{fancychapflag}}{%
  \titleformat{\chapter}[display]%
    {\huge\normalfont\defaultfont\filleft\onehalfspacing%
    \titlerule[1pt]%
    \vspace{1pt}%
    \titlerule}%
    {%
    \vspace{1ex}%
    \chaptertitlename \space \thechapter}%
    {0.5ex}%
    {\bfseries\Huge}%
    [\vspace{1ex}%
    \titlerule]%
    %% Control the spacing of the numbered chapters.
    \titlespacing*{\chapter}{0pt}{0pt}{30pt}
    \titleformat{name=\chapter,numberless}[display]%
    {\huge\normalfont\defaultfont\filcenter}%
    %% Move the title to the top of the page
    {\vspace{-6ex}}%
    {0pt}%
    {\titlerule\huge}%
    [\vspace{\parskip}%
    \titlerule]
    %% Control the spacing of the un-numbered chapters.
    \titlespacing*{name=\chapter,numberless}{0pt}{0pt}{30pt}%
    }%
  {%% Fix chapter spacing to one and a half
    \titleformat{\chapter}[display]%
    {\huge\normalfont\defaultfont\bfseries\onehalfspacing}%
    {\chaptertitlename\ \thechapter}%
    {20pt}%
    {\Huge}%
  }

在哪里:

\newcommand{\defaultfont}{\ifthenelse{\boolean{sansflag}}{\sffamily}{}}

从之前的帖子中,我现在知道我需要使用\trjnfamily而不是\deaultfont。但是,我想修改 Trajan 字体(仅以大写字母显示),如下所示:

  • 对于非大写字母使用稍小的字体并让 Trajan 识别它们(即当您使用 Trajan 处理小写字母时,它通常不会显示任何内容)。
  • 对于实际大写字母,使用稍大一些的字母。

例如如下所示: https://www.fonts.com/font/adobe/trajan/regular

我的问题是我是否可以在文档的类文件中执行此操作,或者是否需要购买新字体,例如 Trajan Regular。

谢谢您的帮助!

答案1

在我看来,您真正想要的是使用名为 的 Opentype 字体Trajan Pro。如果是这样,您应该考虑使用 LuaLaTeX 和fontspec包。您可以使用sectsty包及其\chapterfont宏来更改章节级标题中使用的字体。

在此处输入图片描述

% !TeX program = lualatex
\documentclass{report} 
\usepackage{fontspec,booktabs}
\setmainfont{TexGyre Termes}  % just for this example
\newfontfamily{\trajan}[BoldFont=Trajan Pro Bold]{Trajan Pro}

\newcommand\hw{Hello World} % handy short-cut macro

\usepackage{sectsty}
\chapterfont{\centering\trajan} % "\centering" is optional!

\renewcommand\chaptername{Episode} % just for fun...
\renewcommand\thechapter{\Roman{chapter}}
\setcounter{chapter}{3}

\begin{document} 

\chapter{A New Hope}

\centering
\begin{tabular}{@{}lcc@{}}
\toprule 
 & non-bold & \bfseries bold \\
\midrule
Regular Times Roman     & \hw & \bfseries\hw \\
Small-caps Times Roman  & \scshape \hw & \scshape\bfseries \hw \\
Trajan Pro              & \trajan \hw & \trajan\bfseries \hw \\
\bottomrule
\end{tabular}
\end{document}

答案2

我认为这完全不合适,但文档是你的。请不要要求重音符号和其他变音符号:TeX Live 上的免费 Trajan 字体没有这些符号。

\documentclass{book}
\usepackage{xparse,l3regex}
\usepackage{titlesec}

\titleformat{\chapter}[display]%
  {\huge\fontsize{18}{24}\usefont{T1}{trjn}{m}{n}}
  {\maketrajan{\chaptertitlename}\ \Roman{chapter}}
  {20pt}
  {\maketrajan}

\ExplSyntaxOn
\NewDocumentCommand{\maketrajan}{m}
 {
  \anderlini_maketrajan:f { #1 }
 }
\cs_new_protected:Nn \anderlini_maketrajan:n
 {
  \tl_set:Nn \l_anderlini_title_tl { #1 }
  % change any run of lowercase letters into \trajanlower{<lc letters>}
  \regex_replace_all:nnN { ([a-z]+) } { \c{trajanlower}\cB\{\1\cE\} } \l_anderlini_title_tl
  \tl_use:N \l_anderlini_title_tl
 }
\cs_generate_variant:Nn \anderlini_maketrajan:n { f }
\NewDocumentCommand{\trajanlower}{m}
 {
  \group_begin:
  \fontsize{14}{0}\selectfont
  \tl_upper_case:n { #1 }
  \group_end:
 }
\tl_new:N \l_anderlini_title_tl
\ExplSyntaxOff

\begin{document}

\chapter{This is the title with Trajan letters}

\end{document}

在此处输入图片描述

这是该字体的完整字符表。

在此处输入图片描述

答案3

嗯,这个问题比较棘手,因为 Trajan 字体并不意味着有大小不一样的字母(文档在此处:http://www.tug.dk/FontCatalogue/trajan/)。我可以通过修改包本身来解决这个问题,但既然你只需要标题的异国风格,我还是会发布我的简单粗略的解决方案。我认为它的外观至少是可以忍受的。

所以我遇到的第一个问题是的环境\trjnfamily。以下代码产生结果:

\documentclass[13,legalpaper]{report}

\usepackage[utf8]{inputenc}
\usepackage{trajan}
\usepackage[T1]{fontenc}

\begin{document}

\title{
\begin{Huge}T\end{Huge}HIS \begin{Huge}I\end{Huge}S \begin{Huge}A\end{Huge} \begin{Huge}W\end{Huge}ONDERFUL \begin{Huge}T\end{Huge}HESIS
}

{\trjnfamily \maketitle}

\end{document}

在此处输入图片描述

这段代码的讨厌之处在于它\maketitle规定了论文标题的字体,而且,当命令本身放在正确的环境中时,\trjnfamily它会将其解释为文本(因此M,)。

所以我找到了一个替代解决方案,虽然很粗略,但仍然很好看:

\documentclass[13,legalpaper]{report}

\usepackage[utf8]{inputenc}
\usepackage{trajan}
\usepackage[T1]{fontenc}

\begin{document}

\begin{titlepage}
\vspace*{\stretch{1.0}}
\begin{center}
{\fontsize{18}{60}
{\trjnfamily \begin{Huge}T\end{Huge}HIS \begin{Huge}I\end{Huge}S \begin{Huge}A\end{Huge} \begin{Huge}W\end{Huge}ONDERFUL \begin{Huge}T\end{Huge}HESIS} \\
}
\vspace{0.5cm}
\large{Flying Spaghetti Monster} \\
\vspace{0.2cm}
\large{13.4 million years BC}
\end{center}
\vspace*{\stretch{2.0}}
\end{titlepage}

\end{document}

在此处输入图片描述

希望这能有所帮助。如果你想将这种风格扩展到整个论文,那么真正的问题就会出现。那么,我的粗略解决方案将太耗时。据我所知,没有 LaTeX 命令可以明确地用于配置仅限大写字体。

祝你有美好的一天。

答案4

还可以考虑使用免费的 Cinzel 字体,它与 Trajan 类似。Cinzel 也有一个 Open Type 版本。我喜欢用 Cinzel 做页眉。

如果您没有因为风格原因而局限于 Trajan 或同等字体,您也可以看看免费的 Raleway 字体,它有多种粗细,也可以作为 Open Type 使用。外观不同,但也很适合用作页面标题。

编辑:应 Mico 的要求(并复制他的代码!)这里是 MWE:

% !TeX program = lualatex
\documentclass{report} 
\usepackage{fontspec,booktabs}
\setmainfont{TexGyre Termes}  % just for this example
\newfontfamily{\cinzel}{Cinzel}
\newfontfamily{\raleway}{Raleway}

\newcommand\hw{Hello World} % handy short-cut macro

\usepackage{sectsty}
\chapterfont{\centering\cinzel} % "\centering" is optional!

\renewcommand\chaptername{Episode} % just for fun...
\renewcommand\thechapter{\Roman{chapter}}
\setcounter{chapter}{3}

\begin{document} 

\chapter{A New Hope}

\centering
\begin{tabular}{@{}lcc@{}}
\toprule 
 & non-bold & \bfseries bold \\
\midrule
Regular Times Roman     & \hw & \bfseries\hw \\
Small-caps Times Roman  & \scshape \hw & \scshape\bfseries \hw \\
Cinzel              & \cinzel \hw & \cinzel\bfseries \hw \\
Raleway              & \raleway\textsc \hw & \raleway\bfseries H\textsc{ello} W\textsc{orld} \\
\bottomrule
\end{tabular}
\end{document}

请注意,Raleway Bold 很特别,因为小写字母是针对大写字母而非小写字母定义的。所以我不得不重写Hello World以符合要求。

屏幕截图

相关内容