插入元素到 \part{} 第一页

插入元素到 \part{} 第一页

\part{} 我想在右下角插入文档第一页的引文,如下图所示。

你能帮助我吗?谢谢!

在此处输入图片描述

答案1

以下方法应独立于文档类工作。通过包操作部件页面的输出页面,atbegshi以在文本区域的右下角添加部件注释。

第一个宏\partnote通过调用(清除浮动,根据文档类设置发出偶数填充页面)确保当前页面为部分页面\cleardoublepage。然后,节点将放置在下\AtBeginShipoutNext一个输出页面上。

\AtBeginShipoutUpperLeftpicture在页面的左上角启动一个环境。\put命令移动到文本区域的右下角,使用 e-TeX\dimexpr进行计算。该包允许在命令picture中指定尺寸或长度值(例如 `\put)。picture

以下示例还显示了通过showframe包的选项可视化页面布局的框架geometry。(选项pass表示当前布局设置不会被包更改geometry。)

完整示例文件:

\documentclass[a5paper, landscape]{article}
% Options a5paper and landscape to get a smaller image for TeX.SX
\usepackage[pass, showframe]{geometry}% only for the frame

\usepackage{atbegshi}
\usepackage{picture}

\newcommand*{\partnotefont}{\itshape}
\newcommand{\partnote}[1]{%
  \cleardoublepage
  \AtBeginShipoutNext{%
    \AtBeginShipoutUpperLeft{%
      \put(\dimexpr\ifodd\value{page}\oddsidemargin\else\evensidemargin\fi
        + 1in + \textwidth\relax,
        -\dimexpr\topmargin + 1in + \headheight + \headsep + \textheight){%
        \makebox(0,0)[rb]{%
          \partnotefont
          \begin{tabular}{@{}c@{}}#1\end{tabular}%
        }%
      }%  
    }%  
  }
}

\begin{document}

  \partnote{%
    Necessity of the method in the search for truth\\
    Ren\'e Descartes (1596--1650)
  }
  \part{Tintin in America}

\end{document}

结果

细化

TeX 允许页面上最下方框的深度插入底部边距。 量限于\maxdepth。 以下改进测量框底线的深度并允许其插入底部边距:

\documentclass[landscape,a5paper]{article}
\usepackage[pass,showframe]{geometry}% only for the frame

\usepackage{atbegshi}
\usepackage{picture}
\usepackage{varwidth}

\newcommand*{\partnodefont}{\itshape}
\newcommand{\partnote}[1]{%
  \cleardoublepage
  \AtBeginShipoutNext{%
    \AtBeginShipoutUpperLeft{%
      \put(\dimexpr\ifodd\value{page}\oddsidemargin\else\evensidemargin\fi
        + 1in + \textwidth\relax,
        -\dimexpr\topmargin + 1in + \headheight + \headsep + \textheight){%
        \makebox(0,0)[rb]{%
          \partnodefont
          \sbox0{\begin{varwidth}[b]{\linewidth}\centering#1\end{varwidth}}%
          \ifdim\dp0>0pt
            \dp0=\dimexpr\dp0 - \ifdim\dp0>\maxdepth \maxdepth\else\dp0 \fi    
          \fi
          \usebox{0}%
        }%
      }%
    }%
  }
}

\begin{document}

  \partnote{%
    Necessity of the method in the search for truth\\
    Ren\'e Descartes (1596--1650)
  }
  \part{Tintin in America}

\end{document}

结果细化

注释下线的基线现在位于文本区域的底部。

相关内容