.png)
これは、引用符内の行間隔ドキュメント クラスを使用しており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
で囲むことができます。さらに、質問の編集で新しい基準を満たすには、環境の前後のスペースを修正する必要があります。spacing
1
\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}
両方の例の出力: