我定義了一個簡單的類
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{mycustom}[2019/03/06 My custom class]
\LoadClass{article}
\RequirePackage{setspace}
\newcommand{\summary}{
\begingroup
\setlength{\parindent}{0cm}
\onehalfspacing
}
\newcommand{\ensummary}{
\endgroup
}
\endinput
鑑於我創建了一個簡單的 LaTeX 文件,定義為:
\documentclass{mycustom}
\usepackage{lipsum}
\begin{document}
\lipsum[1][1-3]
\summary
\lipsum[1][1-4]\par
\ensummary
\lipsum[1][1-3]
\end{document}
我注意到我沒有在“一分半”間距par
的內部添加\summary
只是行不通。我想知道這種行為是如何發生的,以及是否有一種方法可以刪除\par
並保留相同的行為( 內的一個半間距\summary
)。非常歡迎任何改進的提示。
這是我添加時的段落\par
這是沒有的段落\par
注意段落中間的行內間距。
答案1
您應該以 結束環境定義,\par
以便它位於行空間變更的範圍內。相反你應該開始否則\par
前面的文字可能會受到影響(嘗試下面的範例,而不使用\par
定義中的第一個)。
正如評論中所指出的,這應該是一個環境(乳膠通常會阻止使用以 開頭的名稱定義命令),在這種情況下不需要\end...
顯式,也永遠不會結束段落,它只是強制換行。\begingroup
\newline
\documentclass{article}
\usepackage{setspace,lipsum}
\newenvironment{summary}
{\par\setlength{\parindent}{0cm}\onehalfspacing}
{\par}
\begin{document}
\lipsum[1][1-3]
\begin{summary}
\lipsum[1][1-4]
\end{summary}
\lipsum[1][1-3]
\end{document}