在数学模式下创建下标很容易:$a_i$
。
我如何在数学环境之外创建下标,像这样?
答案1
请注意,\textsubscript
也会进入数学模式。这可能会在不允许使用数学的 PDF 字符串中产生问题,例如在书签中。如果您使用 hyperref 并简单地\textsubscript
在节标题中使用,hyperref 会抱怨数学转换。该命令\texorpdfstring
可以解决问题:
\documentclass{article}
\usepackage{fixltx2e}
\usepackage{hyperref}
\begin{document}
\section{\texorpdfstring{like\textsubscript{this}}{like this}}
\end{document}
当然,这也适用于章节标题中的数学和数学符号。
自 2015 年起,LaTeX 默认提供 fixltx2e 功能,因此您可以省略\usepackage{fixltx2e}
。
答案2
答案3
LaTeX 中的实际解决方案
写吧like\textsubscript{this}
您不再需要前言修复。例如:
\documentclass{article}
\begin{document}
like\textsubscript{this}
\end{document}
由于软件包的所有修复fixltx2e
在 2015 年默认启用 LaTeX 格式,LaTeX 内核中缺少这个“可预期”命令的奇怪现象现在已经成为历史。
老故事
仅供参考:在已经引用之前fixltx2e
包之前(现已过时),这个命令\textsubscript
也是由这个小包中的完全相同的宏提供的subscript
(不再在 TeX Live 中):
\DeclareRobustCommand*\textsubscript[1]{\@textsubscript{\selectfont#1}}
\newcommand{\@textsubscript}[1]{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
但是这个命令仍然可以在changes
包中访问,这实际上是 最好的选择,因为它仍然在 MiKTeX 和 TeXLive 中。
\documentclass{article}
\usepackage{changes} % Not needed since 2015
\begin{document}
like\textsubscript{this}
\end{document}
另一个选项可能是更简单的用户宏,没有\makeatletter
东西。要设置下标大小,该relsize
包可以帮助:
\documentclass{article}
\usepackage{relsize}
\def\textsubscript#1{\ensuremath{_{\mbox{\textscale{.6}{#1}}}}}
\begin{document}
\huge a\textsubscript{th} A\textsubscript{th}\par
\Large a\textsubscript{th} A\textsubscript{th}\par
\normalsize a\textsubscript{th} A\textsubscript{th}\par
\small a\textsubscript{th} A\textsubscript{th}\par
\footnotesize a\textsubscript{th} A\textsubscript{th}\par
\tiny a\textsubscript{th} A\textsubscript{th}\par
\end{document}
答案4
由于我一直对 LaTeX 的脚本需要数学模式这一事实感到困扰(在数学模式中设置普通文本与 LuaTeX 的方向性存在问题),受此问题的启发,我从 ConTeXt “窃取”了完全在文本模式下设置的下标/上标代码,并通过快速破解使其与纯 TeX 一起工作(但需要 pdftex/luatex),它是这里就目前而言,如果有兴趣的话可以将其转变为一些包裹。