今天我使用 \hfill 在一个页面中创建两列,代码如下:
\begin{minipage}[t]{0.25\textwidth}
\end{minipage}
\hfill
\begin{minipage}[t]{0.73\textwidth}
\end{minipage}
该文档运行良好,但是当我添加如下新行时:
\begin{minipage}[t]{0.25\textwidth}
\end{minipage}
\hfill
\begin{minipage}[t]{0.73\textwidth}
\end{minipage}
这两列不起作用。为什么文档命令 \hfill 无法处理文档的空间?
答案1
你说第一个方法可行,但实际上不可行。
\documentclass{article}
\usepackage{lipsum} % to provide content
\usepackage{showframe} % to show the page margins
\begin{document}
\begin{minipage}[t]{0.25\textwidth}
\lipsum[1][1-2]
\end{minipage}
\hfill
\begin{minipage}[t]{0.73\textwidth}
\lipsum[2][1-5]
\end{minipage}
\end{document}
您得到的是Overfull \hbox (10.32074pt too wide)
,因为左侧小页面前面是标准缩进。您得到的是两个小页面之间的正常单词间距和超满行。单词间距是由于第一个 之后的结束行造成的\end{minipage}
。与
\documentclass{article}
\usepackage{lipsum} % to provide content
\usepackage{showframe} % to show the page margins
\begin{document}
\noindent
\begin{minipage}[t]{0.25\textwidth}
\lipsum[1][1-2]
\end{minipage}\hfill
\begin{minipage}[t]{0.73\textwidth}
\lipsum[2][1-5]
\end{minipage}
\end{document}
注意,不再有结束行,因为\hfill
会忽略下面的结束行。
如果在 之前留一个空行,会发生什么情况\hfill
?这将结束由缩进和第一个小页组成的段落。然后开始一个新段落,其中包含标准缩进、\hfill
和第二个小页。
\documentclass{article}
\usepackage{lipsum} % to provide content
\usepackage{showframe} % to show the page margins
\begin{document}
\begin{minipage}[t]{0.25\textwidth}
\lipsum[1][1-2]
\end{minipage}
\hfill
\begin{minipage}[t]{0.73\textwidth}
\lipsum[2][1-5]
\end{minipage}
\end{document}
如果你不想结束一个段落,就不要留下空行。并仔细观察空格和行尾。