我正在尝试排版一本诗集poemscol
。结果如下:
我想控制用红色标记的距离(我不想向右移动);但使用\setlength
等\leftmargin
的所有尝试\titleindentamount
都不起作用,而且我从未深入研究过页面设置细节。有人能提示一下这通常是如何工作的吗?
当前代码:
\documentclass[9pt, a5paper]{scrbook}
\usepackage[a5paper]{geometry}
\usepackage{fancyhdr}
\usepackage{poemscol}
\begin{document}
\poemtitle{I dwell in Possibility}
\attribution{E. Dickinson (1830--1886)}
\begin{poem}
\begin{stanza}
\textsc{I dwell} in Possibility --\\
A fairer House than Prose --
\end{stanza}
\end{poem}
\end{document}
我尝试跟踪包中的缩进poemscol
,但没有成功。我找不到包中控制此行为的命令。它们的名字是什么?它们在哪里?
答案1
在 的最新版本中,您可以通过更改或poemscol
的值来调整题词的左边距和右边距。\epigraphquoteleftmargin
\epigraphquoterightmargin
您可以通过改变长度的值来调整诗句块的位置\versemarginadjust
。
答案2
正如 egreg 所评论的那样,诗歌作者的缩进确实是在环境中硬编码的epigraphquote
,因此您必须更改其定义。用于正确排版诗歌的环境是pmclverse
(它从环境中继承了一个可选参数poem
)。其确定边距的公式似乎只允许增加,而不允许减少左边距,因此我决定也更改(简化)其定义。
\documentclass[9pt, a5paper]{scrbook}
\usepackage[a5paper]{geometry}
\usepackage{fancyhdr}
\usepackage{poemscol}
\renewenvironment{epigraphquote}%
{\list{}{%
\topsep 0pt%
\partopsep 0pt%
\listparindent 0pt%
\leftmargin 1em% original value: 1.5em
\rightmargin 1em% original value: 1.5em
}%
\item\relax}
{\endlist}
\makeatletter
\renewenvironment{pmclverse}[1][]{%
\let\\=\@centercr%
\list{}{%
\itemsep\z@
\itemindent -\runoverindentvalue
\listparindent \itemindent
\leftmargin 2em% change as desired
\rightmargin 2em% change as desired
\advance\leftmargin\runoverindentvalue
}%
\item[]}
{\endlist}
\makeatother
\begin{document}
\poemtitle{I dwell in Possibility}
\attribution{E. Dickinson (1830--1886)}
\begin{poem}
\begin{stanza}
\textsc{I dwell} in Possibility --\\
A fairer House than Prose --
\end{stanza}
\end{poem}
\end{document}