amsart の引用符環境内の行間隔 (余分な空白を削除)

amsart の引用符環境内の行間隔 (余分な空白を削除)

これは、引用符内の行間隔ドキュメント クラスを使用しておりamsart、ドキュメント全体の行間隔が明確に定義されています。環境内で行間隔を調整するとquote、以下の例のように、引用された内容の上に余分な空白ができます。これを防ぐ方法をご存知ですか? よろしくお願いします。

編集: よく見ると、引用文環境は引用文を少し目立たせるために、メインテキストと引用文の間に少し余分なスペースを挿入するのが標準のようです。その余分なスペースは問題ありませんが、スペースに追加したいのです。本文の引用文の間隔ではなく、余白の間隔を e に設定したいのです。余分な余白が e で、本文の間隔が m、引用文の間隔が q の場合、本文と引用文の間隔は q + e ではなく、m + e にしたいのです。

\documentclass{amsart}
\usepackage{setspace}
\usepackage{lipsum}

\setstretch{1.5}

\begin{document}

\lipsum[2]
\begin{quote}
\singlespacing
\lipsum[1]
\end{quote}
\lipsum[2]

\end{document}

答え1

環境を因子付きの環境quoteで囲むことができます。さらに、質問の編集で新しい基準を満たすには、環境の前後のスペースを修正する必要があります。spacing1

\documentclass{amsart}
\usepackage{setspace}
\usepackage{lipsum}

\doublespacing

\let\oldquote\quote
\let\oldendquote\endquote
\renewenvironment{quote}
  {\vspace{\dimexpr-12pt-\topsep+\baselineskip\relax}\begin{spacing}{1}\oldquote}
  {\oldendquote\end{spacing}\vspace{\dimexpr-12pt-\topsep+\baselineskip\relax}}

\begin{document}

\lipsum[2]
\begin{quote}
\lipsum[1]
\end{quote}
\lipsum[2]

\end{document}

ここに画像の説明を入力してください

この例では、結果をより見やすくするために\doublespacing元の設定の代わりに使用しましたが、元の設定でも要求された結果が生成されます。\setstretch{1.15}

答え2

\singlespacingに切り替えると、設計上、追加のスペースが挿入されます。 に置き換えます\setstretch{1}

\documentclass{amsart}
\usepackage{setspace}
\usepackage{lipsum}

\setstretch{1.15}

\begin{document}

\lipsum[2]
\begin{quote}
\setstretch{1}
\lipsum[1]
\end{quote}
\lipsum[2]

\end{document}

ドキュメント内の\setstretch{1}すべての環境に追加するのではなく、プリアンブルでこの変更を適用する方法は次のとおりです。quote

\documentclass{amsart}
\usepackage{setspace}
\usepackage{lipsum}

\setstretch{1.15}

\usepackage{etoolbox}
\AtBeginEnvironment{quote}{\setstretch{1}}

\begin{document}

\lipsum[2]
\begin{quote}
\lipsum[1]
\end{quote}
\lipsum[2]

\end{document}

両方の例の出力:

ここに画像の説明を入力してください

関連情報