
這是一個困擾我好一陣子的問題。我對在窄頁上排版詩歌感興趣。我使用該verse
包來設定詩歌,並使用該geometry
套件來管理頁面大小。當一行文字的長度剛好達到頁邊距時,會在該行下方插入一個垂直空格。
這是我的最小範例:
\documentclass{article}
\usepackage[paperheight=10in,paperwidth=5in,margin=1in]{geometry}
\usepackage{verse}
\begin{document}
\begin{verse}
% Works how I expect:
The quick brown fox jumped over the\\
Lazy dog.
% Make first line a bit longer, and now there is extra space between lines
The quick brown FOX jumped over The\\
Lazy dog.
\end{verse}
\end{document}
答案1
正如@tohecz 注意到你的\hbox
.這意味著該行比一行長,但 TeX 沒有找到合適的位置來換行,而是讓單字黏在頁邊空白中。
讓線再長一點將向您展示為什麼這會產生「額外的垂直空間」——一條新線開始,其中什麼都沒有:
\documentclass{article}
\usepackage[paperheight=10in,paperwidth=5in,margin=1in]{geometry}
\usepackage{verse}
\begin{document}
\begin{verse}
% Works how I expect:
The quick brown fox jumped over the\\
Lazy dog.
% Make first line a bit longer, and now there is extra space between lines
The quick brown FOX jumped over The\\
Lazy dog.
The quick brown FOX jumped over the the\\
Lazy dog.
\end{verse}
\end{document}
如果您無法重新措詞或更改文件的寬度或經文的字體大小,這裡有一個折衷的解決方案:
\begin{verse}
The quick brown FOX jumped over \rlap{The}\\
Lazy dog.
\end{verse}
\rlap{}
讓我們的參數向右重疊,但沒有寬度。
答案2
問題是您的行比應有的長,如日誌所示:
Overfull \hbox (3.10588pt too wide) in paragraph at lines 11--12
此外,如果您使用,則透過黑色方塊進行驗證\documentclass[draft]{article}
當然,如果您的文件有缺陷,LaTeX 將無法如預期運作。
答案3
正如您在評論中所建議的那樣,添加聲明\raggedright
為我解決了這個問題。我真的不確定為什麼這不是 verse 環境中的預設值。