关于“设置”字体大小的结果有很多,但我找不到如何“获取”它们。
以下是一些代码\Large 等字体大小是多少点(pt)?我可以用来检查、等的字体\normalsize
大小\large
。
\makeatletter
\newcommand\thefontsize[1]{{#1 The current font size is: \f@size pt\par}}
\makeatother
\begin{document}
\thefontsize\normalsize
\end{document}
但\thefontsize\section
不起作用......
有人能帮助我如何获得它吗?
答案1
您可以通过将命令放入分段命令的参数中来执行类似操作\thefontsize
。在这种情况下,命令不需要带参数。(如果您想使用与上述代码相同的命令,只需键入\thefontsize{}
即可。
\documentclass{book}
\makeatletter
\newcommand\thefontsize{The current font size is: \f@size pt}
\makeatother
\begin{document}
\chapter{\thefontsize}
\section{\thefontsize}
\subsection{\thefontsize}
\subsubsection{\thefontsize}
\end{document}
答案2
艾伦的答案的变体可以向您显示所有字体属性:
\documentclass{book}
\usepackage[T1]{fontenc}
\newcommand\thefont{\expandafter\string\the\font}
\begin{document}
\chapter{\thefont}
\section{\thefont}
\subsection{\thefont}
\subsubsection{\thefont}
\thefont
\end{document}
有什么诀窍?它使用了 TeX 相当低级的功能;实际上
\expandafter\string\the\font
是 TeX 的基元。基元\font
用于为加载其度量文件的字体分配名称,但它可以遵循\the
(参见\命令),在这种情况下,它会返回与使用当前字体所需的控制序列相对应的控制序列(低级命令,而不是高级命令\bfseries
和同级命令)。例如,在默认设置和普通文本中,
\the\font
将返回控制序列\OT1/cmr/m/n/10
(如果没有特殊技巧,则无法写入)。使用\string
我们可以打印该控制序列,但我们需要让\the
act before\string
完成其工作,因此不需要\expandafter
。我在示例中使用了 T1 编码,因为在 OT1 编码中,通常分配给反斜杠的插槽被 占用”
。