我制作 A3 格式的试卷,当试卷太长时,我想制作一个 A4 格式的补充页。我使用\newgeometry
geometry 包的命令,但已知该包拒绝在同一文档中从 A3 转换为 A4。那么我该如何实现我的目的呢?
我给出了一个简单的 MWE,其中我使用一块木板minipage
来观察我使用时的行为\newgeometry
。
\documentclass[12pt]{exam}
\usepackage[figuresleft]{rotating}
\usepackage{multicol}
\setlength{\columnsep}{40pt}
\setlength{\columnseprule}{3pt}
\usepackage[a3paper,landscape,margin=2cm,twocolumn]{geometry}
\begin{document}
\pagestyle{empty}
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
%
\begin{minipage}{15cm}
A first question
\end{minipage}
%
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
\newpage
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
%
\begin{minipage}{15cm}
A second question
\end{minipage}
%
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
\newpage
\newgeometry{a4paper,total={180mm,255mm},includefoot,includehead,centering,twoside,top=10pt}
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
%
\begin{minipage}{15cm}
A third question
\end{minipage}
%
\begin{minipage}{1pt}
\rule{1pt}{4cm}
\end{minipage}
\end{document}
以及它的汇编
我们可以在第二页上看到效果,其中的文件显然是 A4 文件,但具有 A3 几何尺寸。
一种解决方案是旋转最后一页,并在诸如、等尺寸上进行操作width
以height
获得top
良好的旋转居中页面,然后在 A4 打印机上打印...(请注意,这是我对 A3 页面所做的。我在 A4 打印机上打印它,然后将其复制到“从 A4 到 A3”外面。
答案1
有些驱动程序(dvips)不支持在文档中间更改纸张大小,但其他驱动程序可以像 pdfTeX 或 LuaTeX 一样在 PDF 模式下使用。这也许是软件包geometry
不允许更改纸张大小的原因\newgeometry
。
但是可以手动设置值,从选项中获取\newgeometry
(你真的想要吗top=10pt
,我已经用 21mm 替换了垂直居中)?
的减法1in
是 TeX 的一个奇怪之处,原点不是左上角,而是在内部水平和垂直移动 1 英寸。
\newpage
\onecolumn
\setlength{\paperwidth}{210mm}
\setlength{\paperheight}{297mm}
\setlength{\textwidth}{180mm}
\setlength{\textheight}{255mm}
\setlength{\topmargin}{21mm}
\addtolength{\topmargin}{-1in}
\addtolength{\textheight}{-\headheight}
\addtolength{\textheight}{-\headsep}
\addtolength{\textheight}{-\footskip}
\setlength{\oddsidemargin}{\paperwidth}
\addtolength{\oddsidemargin}{-\textwidth}
\setlength{\oddsidemargin}{.5\oddsidemargin}
\addtolength{\oddsidemargin}{-1in}
\setlength{\evensidemargin}{\oddsidemargin}
\setlength{\hsize}{\textwidth}
\setlength{\columnwidth}{\textwidth}
\setlength{\linewidth}{\textwidth}
\setlength{\vsize}{\textheight}
\setlength{\csname @colht\endcsname}{\textheight}
% Driver part (XeLaTeX, pdfTeX or LuaTeX with package `luatex85`)
\setlength{\pdfpagewidth}{\paperwidth}
\setlength{\pdfpageheight}{\paperheight}
通过使用 e-TeX 的 可以节省一些行\dimexpr
。这留给读者练习。
PS:考虑生成两个文档。这样打印起来可能更方便,PDF 查看器/打印机也不会产生太多混乱。
PPS:选项是显示页面布局showframe
的一个很好的功能,对于调试/检查布局设置很有用。geometry