如何将 A4 纸水平居中放置在 A3 纸内?

如何将 A4 纸水平居中放置在 A3 纸内?

我想将一张 A4 纸嵌入一张 A3 纸中,这样 A4 纸就可以水平居中放置在 A3 纸中。(相对垂直对齐无关紧要。)

我尝试使用以下计算来确定 A4 纸与 A3 纸左边缘的偏移量。将 A4 纸偏移以下长度的一半:\paperwidth减去\oddsidemargin+\textwidth+\marginparsep+\marginparwidth。但是,这并没有达到预期的效果,如下所示。

为什么我的计算没有将 A4 纸置于 A3 纸的中心?我该如何修正我的代码?

\documentclass{article}
\usepackage{lipsum}

\usepackage[a3paper,portrait,showframe]{geometry}

\geometry{layout=a4paper}

\newlength{\layouthoffset}
\setlength{\layouthoffset}{.5\paperwidth}
\addtolength\layouthoffset{-.5\oddsidemargin}
\addtolength\layouthoffset{-.5\textwidth}
\addtolength{\layouthoffset}{-.5\marginparsep}
\addtolength{\layouthoffset}{-.5\marginparwidth}

\geometry{layouthoffset=\layouthoffset}
\begin{document}
\lipsum[1-6]
\end{document}

尝试将 A4 纸放在 A3 纸的中间

答案1

您可以使用包的(内部)布局宽度geometry

\documentclass{article}
\usepackage{lipsum}

\usepackage[a3paper,layout=a4paper,portrait,showframe]{geometry}

\makeatletter
\geometry{layouthoffset=\dimexpr(\paperwidth-\Gm@layoutwidth)/2\relax}
\makeatother
\begin{document}
\lipsum[1-6]
\end{document}

纸张内部水平居中布局

或者如果您想要水平和垂直居中,只需使用包crop

\documentclass{article}
\usepackage{lipsum}

\usepackage[a4paper,showframe]{geometry}
\usepackage[a3,center]{crop}

\begin{document}
\lipsum[1-6]
\end{document}

使用 crop 包进行水平和垂直居中

相关内容