
Давайте посмотрим на следующий код:
\documentclass{article}
\begin{document}
\newtheorem{theorem}{Theorem}
\begin{theorem}
TFAE
\begin{itemize}
\item[(i)]
$0<1$;
\item[(ii)]
$1>0$.
\end{itemize}
\end{theorem}
But I want (i)'s Roman:
\begin{theorem}
TFAE
\begin{itemize}
\item[\textrm{(i)}]
$0<1$;
\item[\textrm{(ii)}]
$1>0$.
\end{itemize}
\end{theorem}
Alas, still italic, but\ldots
\begin{theorem}
TFAE
\begin{itemize}
\item[\rm(i)]
$0<1$;
\item[\rm(ii)]
$1>0$.
\end{itemize}
\end{theorem}
\end{document}
И \textrm
, который должен быть лучше устаревшего \rm
(я знаю разницу в их использовании) не работает так, как можно было бы ожидать. Это аргумент в пользу использования \rm
время от времени?
решение1
Нет, \rm
устарело и не должно использоваться в документе LaTeX2e (ConTeXt и plain, конечно, отличаются). То, что здесь происходит, сделано намеренно. Выдача \textrm
означает, что текущее семейство шрифтов должно быть римским, а не без засечек или моноширинным. Однако это не такнетизменить текущую форму (прямой/курсивный/наклонный) или толщину (тонкий/средний/толстый): в этом и заключается суть «Новой схемы выбора шрифта» LaTeX2e. Напротив, \rm
устанавливает фиксированный шрифт: прямой, римский, средней толщины.
Следовательно, здесь вы ищете изменение формы шрифта, а не семейства: \textup
это команда, которую вы ищете (ср. \textit
, \textsl
). Конечно, в реальном случае вы должны применять это как изменение общего стиля теоремы, а не простодля этого случаяоснова.
решение2
Нет, если вы хотите быть уверены, что метки элементов соответствуют " \rm
стилю", вам следует использовать
{\normalfont(i)}
Конечно, как указал @egreg, вы можете захотеть использовать enumitem
и переопределять метки элементов глобально, поскольку локальные изменения, подобные этому, несистематичны и не подвержены ошибкам. Поэтому следующее в вашей преамбуле может помочь:
\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate,1]{label={\normalfont(\roman*)}}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}
TFAE
\begin{enumerate}
\item
$0<1$;
\item
$1>0$.
\end{enumerate}
\end{theorem}
\end{document}
решение3
Один важный фактор, вытекающий из ответа Джозефа Райта, который следует подчеркнуть:
\textrm
, \textbf
, \textit
, и т. д. не являются простыми эквивалентами простых \rm
, \bf
, \it
, и т. д. в локальном режиме. Более того: их значения имеют разные типы в LaTeX (например, семейство против формы).