答案1
您的解决方案很棒!有人可能会想出更好的方法,但我采用了您的代码,添加了页码,解决了页面高度问题。我还为最后一页添加了一个条件,以检查它是否已作为最后一页双页的一部分打印出来。
为了举个例子,我使用了biblatex
任何 TeX 发行版都应该提供的手册,因为我没有你的杂志文件。
对于页码:我使用\llap{<number>}
和\rlap{<number>}
将页码放在包含的 pdf 上,而不使用任何额外空间。如果您想做任何额外的样式(颜色、大小、字体形状、可能的框等),这些都可以添加到参数中。如果您打算这样做,我建议定义一个宏,这样就可以在一个地方定义样式并在各种和\Xlap
命令中使用。\llap
\rlap
对于页面高度问题:任何浮动都不允许跨越页面,因此不能超过\textheight
。但图形没有必要放在浮动内。我使用了\captionof{figure}{A Flatplan}
(来自capt-of
包)来包含不带环境的标题figure
。
最后一页:如果最后一页是奇数(手册中的情况就是如此biblatex
),您的解决方案将打印两次:一次作为最终双页展开的右半部分,另一次作为单独的一页。我添加了一个条件表达式,仅当最后一页是奇数时才输出最后的单页不是奇数(又称偶数)。
完整代码:
\documentclass{article}
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage{graphicx}
\usepackage{multido}
\usepackage{capt-of} % added for caption without float
\def\filename{biblatex.pdf}
\def\scale{.05}
\pdfximage{\filename}
\newcount\N % counter for the last doublepage spread
\N=\pdflastximagepages\relax
\advance\N by -1\relax
\divide\N by 2\relax
\begin{document}
\centering
% \hspace{\dimexpr(8.5in*\scale)/2\relax}
\fbox{\includegraphics[scale=\scale,page=1]{\filename}\llap{1}}
\multido{\ileft=2+2,\iright=3+2}{\the\N}{%
\fbox{%
\rlap{\ileft}\includegraphics[scale=\scale,page=\ileft]{\filename}
\includegraphics[scale=\scale,page=\iright]{\filename}\llap{\iright}%
}
}
\ifodd\the\pdflastximagepages\else% only output the last page if not already included with a spread
\fbox{\rlap{\the\pdflastximagepages}\includegraphics[scale=\scale,page=\the\pdflastximagepages]{\filename}}
\fi
\captionof{figure}{A Flatplan}
\end{document}
输出:
答案2
我自己的尝试
经过反复尝试,这是我目前的尝试:
\documentclass{article}
\usepackage[a4paper,margin=2cm]{geometry}
\usepackage{graphicx}
\usepackage{multido}
\def\filename{test.pdf}
\def\scale{.05}
\pdfximage{\filename}
\newcount\N % counter for the last doublepage spread
\N=\pdflastximagepages\relax
\advance\N by -1\relax
\divide\N by 2\relax
\begin{document}
\begin{figure}[p]
\centering
\fbox{\includegraphics[scale=\scale,page=1]{\filename}}
\multido{\ileft=2+2,\iright=3+2}{\the\N}{%
\fbox{%
\includegraphics[scale=\scale,page=\ileft]{\filename}
\includegraphics[scale=\scale,page=\iright]{\filename}
}
}
\fbox{\includegraphics[scale=\scale,page=\the\pdflastximagepages]{\filename}}
\caption{A Flatplan}
\end{figure}
\end{document}
这是一本 139 页的杂志的test.pdf
结果:
。
仍下落不明
- 每张图片下方的页码,左右对齐
已知问题
- 仅适用于
pdflatex
- 如果图形高于页面,则将被截断