我对 LaTeX 中每种文本的用途有点困惑。我知道其中一些文本的功能,但有时人们出于不同的原因使用它们。例如:
\texttt
用于代码(没有讨论吧?)。\emph
是为了强调。\textsc
是用来起名字的吧?\textbf
我什么时候应该使用它?\textmd
我什么时候应该使用它?
还有一点:如果我在段落之间写上“HI-TECH C PIC Compiler”,大写字母看起来不太好看。这样使用方便吗\textsf
?
普通文本可以和不同类型混合吗?什么情况下可以?
附言:我正在使用带有普通字体的文章类。
答案1
我觉得你搞糊涂了视觉标记和语义标记。
\emph
是语义标记:表示您想要强调某些文本,而不指定这将如何影响文本的外观。默认设置是将其设为斜体,或者对于嵌套的 emph-within-emph 将其再次设为罗马字体。但是,如果您稍后决定使用粗体来强调,则可以覆盖默认设置:\renewcommand\emph{\textbf}
。
\texttt
、、等等\textmd
\textsc
视觉标记. 你应该用它们来实施语义标记。例如,如果你想使用法语惯例,即使用小写字母表示姓氏,你可以写成\newcommand\familyname{\textsc}
并有This was studied by John \familyname{Smith} and \familyname{Yao} Ming
。如果你后来决定不再喜欢这个惯例,可以很容易地在序言中更改,而无需搜索文本。同样,你可能想写\newcommand\code{\texttt}
视觉\textXX
命令将改变文本的 3 个轴:形状,家庭和重量。
- 这形状轴覆盖:
\textup
、\textit
和\textsc
\textsl
- 这家庭轴覆盖:
\textrm
,,\textsf
\texttt
- 这重量轴覆盖:
\textbf
,\textmd
- 有些字体提供了这些轴的其他选项,甚至像 MinionPro 一样,提供了全新的轴。(此功能现在独立于软件包中的 MinionPro 使用
fontaxes
,因此可以与其他字体一起使用。)
您可以组合不同轴的选项(某些组合,例如\textbf{\textt{...}}
默认情况下不可用,这里讨论)。 例如:
\newcommand\keyword[1]{\textsf{\textbf{#1}}}
\newcommand\important[1]{\textbf{\textit{#1}}}
关于“HI-TECH C PIC 编译器”:某些字体(尤其是针对报纸和杂志出版的字体)的大写字母大小介于小写字母 ( \textsc
) 和全大写字母之间,正是出于这个目的。默认的 tex 计算机现代字体没有这种可能性,但计算机现代字体\textsc
不是真正的小写字母,比字体的 x 高度略高,因此可以这样使用:\newcommand\hitechcomp{\textsc{hi-tech c pic} compiler}
答案2
(我没有“正确”的答案,只有一些印刷提示。)
大多数字体可以分为衬线字体、无衬线字体或等宽字体:
衬线字体 (
\textrm
) 通常用于正文。(衬线是字母笔画末尾的小条纹,为文本行建立视觉基础。)无衬线字体 (
\textsf
) 通常用于标题、表格和表格/图片说明。(出于易读性原因,人们通常不赞成使用无衬线字体排版正文。)等宽(“打字机”)字体(
\texttt
)主要限于代码列表和 URL。
对于每个字体类别或“系列”,以下属性(以及属性组合)都是可能的,尽管在实践中通常不可用:
Medium 是“正常”(直立、非粗体)字体。(这些命令
\textup
分别\textmd
用于取消其他属性命令的效果并切换回中等字体 - 有关详细信息,请参阅 Lev Bishop 的回答。)斜体 (
\textit
) 可用于强调文本的某些部分,而不会使这些部分乍一看就“突出”。(\emph
默认为\textit
。)斜体字体也适用于低层级标题。斜体是一种单独的字体设计 - 不仅字母倾斜,而且其中许多字母(例如“a”、“g”)具有独特的形式。\textsl
当周围没有“真正的”斜体字体时,Slanted ( ) 是一种替代字体。粗体 (
\textbf
) 适合用于 (顶部) 标题。在正文中,只有当您确实希望某些单词“突出”时才应使用粗体字体 - 例如字典中的关键字。小型大写字母 (
\textsc
) 是另一种强调方式。它们有时用于名称,但特别适合首字母缩略词(UNESCO、PIC Compiler),因为大写字母会破坏文本图像。“真正的”小型大写字母是一种单独的字体设计 - 不要使用“伪造的”小型大写字母(缩小的大写字母)。