仅第一页上有不同(交换)的边距

仅第一页上有不同(交换)的边距

我必须排版双面文档(使用 memoir 类),外边距要更宽(用于一些注释)。问题是,在第一页,这些边距必须交换,即内边距(左)更宽。不幸的是,无法手动拆分第一页(页面包含 longtable),因此没有简单的方法使用 \newgeometry(据我所知)。

希望解释清楚,有一个简单的不起作用的 MWE:

\documentclass[twoside]{memoir}
\usepackage{lipsum, filecontents}
\usepackage{pgfplotstable, csvsimple, longtable, afterpage}
\usepackage[showframe]{geometry}
\geometry{top=10cm,bottom=10cm,outer=5cm,inner=1cm}

\begin{filecontents*}{main.csv}
    tableA
    exampleA.csv
    exampleA.csv   % Added line
    exampleA.csv   % Added line
    exampleA.csv   % Added line
\end{filecontents*}

\begin{filecontents*}{exampleA.csv}
    colA
    a
    b
    c
    d
    e
    f
    g
    h
    i
    j
    k
    l
    m
    n
    o
    p
    q
\end{filecontents*}

\begin{document}
This page has to be with "swaped" margins, i.e. outer=1cm, inner=5cm.
How to do this???

\lipsum[1]

%
% Structure of first page
%
\csvreader[%
    head to column names,
    separator=semicolon]{main.csv}{}{%

  \begin{enumerate}
    \item First example \tableA
    \pgfplotstabletypeset[
        string type,
        begin table=\begin{longtable},
        end table=\end{longtable}]{\tableA}
  \end{enumerate}
}


This page (and all following from page number 2) has margins as
defined above, i.e. outer=5cm, inner=1cm.

Unfortunately this page start somwhere inside above loop...

\lipsum
\end{document}

编辑:
在 main.csv 中添加了 3 行。

问题:
建议的解决方案不起作用。更新的 MWE 编译时出现错误。

阅读了很多建议后,我仍然没有解决方案......所以我会很感激任何帮助或建议!

先感谢您,

卢博斯

答案1

这是一个解决方案。使用后页包裹。

笔记在 newgeometry 中outer+inner=OLDouter+OLDinner不要改变文本宽度。

\documentclass[twoside]{memoir}
\usepackage{lipsum}
\usepackage{geometry}
\geometry{top=1cm,bottom=1cm,outer=5cm,inner=1cm}
\usepackage{afterpage}

\begin{document}
\newgeometry{top=1cm,bottom=1cm,outer=1cm,inner=5cm}
\afterpage{\aftergroup\restoregeometry}
\lipsum[1-40]
\end{document} 

更新可以使用

\oddsidemargin=\evensidemargin
\afterpage{\aftergroup\restoregeometry}

例子

\documentclass[twoside]{memoir}
\usepackage{lipsum, filecontents}
\usepackage{pgfplotstable, csvsimple, longtable, afterpage}
\usepackage{geometry}
\geometry{top=10cm,bottom=10cm,outer=5cm,inner=1cm}

\begin{filecontents*}{main.csv}
    tableA
    exampleA.csv
\end{filecontents*}

\begin{filecontents*}{exampleA.csv}
    colA
    a
    b
    c
    d
    e
    f
    g
    h
    i
    j
    k
    l
    m
    n
    o
    p
    q
\end{filecontents*}

\begin{document}

\oddsidemargin=\evensidemargin
\afterpage{\aftergroup\restoregeometry}
This page has to be with "swaped" margins, i.e. outer=1cm, inner=5cm.
How to do this???

\lipsum[1]

%
% Structure of first page
%
\csvreader[%
    head to column names,
    separator=semicolon]{main.csv}{}{%

  \begin{enumerate}
    \item First example \tableA
    \pgfplotstabletypeset[
        string type,
        begin table=\begin{longtable},
        end table=\end{longtable}]{\tableA}
  \end{enumerate}
}


This page (and all following from page number 2) has margins as
defined above, i.e. outer=5cm, inner=1cm.

Unfortunately this page start somwhere inside above loop...

\lipsum
\end{document}

相关内容