如何獲得定理左側和右側的水平空間?我最初的想法是做以下壞主意:
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{amsthm}% http://ctan.org/pkg/amsthm
\newtheoremstyle{newplain} % name of the style to be used
{} % measure of space to leave above the theorem
{} % measure of space to leave below the theorem
{\addtolength{\leftskip}{2em}\addtolength{\rightskip}{2em}% this is probably bad!!!
\itshape} % commands on body of the theorem
{} % measure of space to indent (empty = no indent, \parindent = para indent)
{\bfseries} % name of head font
{.} % punctuation between head and body
{5pt plus 1pt minus 1pt} % space after theorem head
{} % Manually specify head
\theoremstyle{newplain}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{lemma}{Lemma}[section]
\begin{document}
\lipsum[1]
\begin{lemma}
The Lemma says
\begin{equation}
y=mx+c.
\end{equation}
\end{lemma}
\lipsum[2]
\begin{theorem}[Wigner-Eckart theorem]
The Matrix elements of a tensor operator can be rewritten as
\begin{equation}
y=(\partial_x y)x+c.
\end{equation}
This equation does not does not have the correct formatting that was defined above.
\end{theorem}
\lipsum[3]
\end{document}
答案1
這是一個使用以下方法的解決方案etoolbox
包裹 changepage
您的環境adjustwidth
周圍的環境theorem
。
重要的部分是:
\BeforeBeginEnvironment{theorem}{\begin{adjustwidth}{2cm}{2cm}}
\AfterEndEnvironment{theorem}{\endadjustwidth}
2cm
顯然,您可以根據需要更改。
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{amsthm}% http://ctan.org/pkg/amsthm
\usepackage{etoolbox}
\usepackage{changepage}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}[section] % numbered by the sections number
\BeforeBeginEnvironment{theorem}{\begin{adjustwidth}{2cm}{2cm}}
\AfterEndEnvironment{theorem}{\endadjustwidth}
\begin{document}
\lipsum[1]
\begin{theorem}[Wigner-Eckart theorem]
The Matrix elements of a tensor operator $T_{q}^{(1)}$ can be rewritten as
\begin{equation}
y=mx+c
\end{equation}
\end{theorem}
\lipsum[2]
\end{document}