乳胶多色环境中的文本超出边距
Text out of margin in latex multicols environment
我正在为多个环境设置边距配置。例如 firstenvironment
使用 \setlength
设置边距,然后我在新环境中使用 multicols 包。问题是文本似乎不尊重刚刚使用环境的第一页的底部边距,但下一页中的文本确实尊重边距。当我创建具有自己的边距配置的第二个环境时,也会发生同样的情况。不确定为什么在环境开始时不立即激活边距。欢迎任何建议,谢谢!
PD。使用 Xelatex
编译的 PDF
\documentclass[12pt]{article}
\usepackage{lipsum}
\usepackage{showframe} % show the frame margins
\usepackage{multicol}
\newenvironment{firstenvironment}{
\setlength{\hoffset}{0mm}
\setlength{\voffset}{0mm}
\setlength{\headsep}{20pt}
\setlength{\headheight}{4em}
\setlength{\textheight}{6in}
\setlength{\footskip}{10mm}}{}
\newenvironment{secondenvironment}{
\setlength{\hoffset}{0mm}
\setlength{\voffset}{0mm}
\setlength{\headsep}{5pt}
\setlength{\headheight}{2em}
\setlength{\textheight}{5in}
\setlength{\footskip}{20mm}}{}
\begin{document}
\begin{firstenvironment}
\setlength\columnsep{30pt}
\begin{multicols}{2}
{\Large\bf 1ST LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\newpage
\begin{secondenvironment}
\begin{multicols}{2}
{\Large\bf 2ND LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{secondenvironment}
\end{document}
照片、文字超出下边距:image
我只是想知道如何修复它。我使用了包 changepage。这个想法是在这个命令的参数中包含 new margins 和 old margins 之间的差异。不需要使用环境来设置不同边距的页面(考虑页眉、页脚和边注),但要保持与原始结构相同post,我提供了一个可以轻松比较的解决方案。
\documentclass[12pt]{article}
\usepackage[paperheight=11in,paperwidth=8.5in,includeheadfoot]{geometry}
\usepackage{lipsum}
\usepackage{showframe}
\usepackage{multicol}
\usepackage{changepage}
\usepackage{calc}
\newenvironment{firstenvironment}{}{}
\newenvironment{secondenvironment}{}{}
\begin{document}
\setlength{\textheight}{7in}
\setlength{\headsep}{20pt}
\setlength{\headheight}{4em}
\setlength{\footskip}{10mm}
\begin{firstenvironment}
\begin{multicols}{2}
{\Large 1ST LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\newpage
\changepage{-2in}{}{}{}{}{}{2em-4em}{5pt-20pt}{20mm-10mm}
%\changepage{textheight}{textwidth}{evensidemargin}{oddsidemargin}{columnsep}{topmargin}{headheight}{headsep}{footskip}
\begin{secondenvironment}
\begin{multicols}{2}
{\Large 2ND LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{secondenvironment}
\restoregeometry
\begin{firstenvironment}
\begin{multicols}{2}
{\Large 3rd LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\end{document}
- 命令
\changepage
考虑以下参数:
\changepage{textheight}{textwidth}{evensidemargin}{oddsidemargin}{columnsep}{topmargin}{headheight}{headsep}{footskip}
\changepage
命令下留空的页边距考虑文章 class 的默认页边距。如果你想在设置新的边距后恢复,只需使用命令 \restoregeometry
我正在为多个环境设置边距配置。例如 firstenvironment
使用 \setlength
设置边距,然后我在新环境中使用 multicols 包。问题是文本似乎不尊重刚刚使用环境的第一页的底部边距,但下一页中的文本确实尊重边距。当我创建具有自己的边距配置的第二个环境时,也会发生同样的情况。不确定为什么在环境开始时不立即激活边距。欢迎任何建议,谢谢!
PD。使用 Xelatex
编译的 PDF\documentclass[12pt]{article}
\usepackage{lipsum}
\usepackage{showframe} % show the frame margins
\usepackage{multicol}
\newenvironment{firstenvironment}{
\setlength{\hoffset}{0mm}
\setlength{\voffset}{0mm}
\setlength{\headsep}{20pt}
\setlength{\headheight}{4em}
\setlength{\textheight}{6in}
\setlength{\footskip}{10mm}}{}
\newenvironment{secondenvironment}{
\setlength{\hoffset}{0mm}
\setlength{\voffset}{0mm}
\setlength{\headsep}{5pt}
\setlength{\headheight}{2em}
\setlength{\textheight}{5in}
\setlength{\footskip}{20mm}}{}
\begin{document}
\begin{firstenvironment}
\setlength\columnsep{30pt}
\begin{multicols}{2}
{\Large\bf 1ST LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\newpage
\begin{secondenvironment}
\begin{multicols}{2}
{\Large\bf 2ND LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{secondenvironment}
\end{document}
照片、文字超出下边距:image
我只是想知道如何修复它。我使用了包 changepage。这个想法是在这个命令的参数中包含 new margins 和 old margins 之间的差异。不需要使用环境来设置不同边距的页面(考虑页眉、页脚和边注),但要保持与原始结构相同post,我提供了一个可以轻松比较的解决方案。
\documentclass[12pt]{article}
\usepackage[paperheight=11in,paperwidth=8.5in,includeheadfoot]{geometry}
\usepackage{lipsum}
\usepackage{showframe}
\usepackage{multicol}
\usepackage{changepage}
\usepackage{calc}
\newenvironment{firstenvironment}{}{}
\newenvironment{secondenvironment}{}{}
\begin{document}
\setlength{\textheight}{7in}
\setlength{\headsep}{20pt}
\setlength{\headheight}{4em}
\setlength{\footskip}{10mm}
\begin{firstenvironment}
\begin{multicols}{2}
{\Large 1ST LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\newpage
\changepage{-2in}{}{}{}{}{}{2em-4em}{5pt-20pt}{20mm-10mm}
%\changepage{textheight}{textwidth}{evensidemargin}{oddsidemargin}{columnsep}{topmargin}{headheight}{headsep}{footskip}
\begin{secondenvironment}
\begin{multicols}{2}
{\Large 2ND LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{secondenvironment}
\restoregeometry
\begin{firstenvironment}
\begin{multicols}{2}
{\Large 3rd LIPSUM}\
\lipsum[1-10]
\end{multicols}
\end{firstenvironment}
\end{document}
- 命令
\changepage
考虑以下参数:\changepage{textheight}{textwidth}{evensidemargin}{oddsidemargin}{columnsep}{topmargin}{headheight}{headsep}{footskip}
\changepage
命令下留空的页边距考虑文章 class 的默认页边距。如果你想在设置新的边距后恢复,只需使用命令\restoregeometry