![按照书本折叠顺序在一张双面 A4 纸上打印八页 A6 页面](https://linux22.com/image/317103/%E6%8C%89%E7%85%A7%E4%B9%A6%E6%9C%AC%E6%8A%98%E5%8F%A0%E9%A1%BA%E5%BA%8F%E5%9C%A8%E4%B8%80%E5%BC%A0%E5%8F%8C%E9%9D%A2%20A4%20%E7%BA%B8%E4%B8%8A%E6%89%93%E5%8D%B0%E5%85%AB%E9%A1%B5%20A6%20%E9%A1%B5%E9%9D%A2.png)
我试图实现的目标可能有点过头了。不过我必须承认 TeX 从未让我失望过,所以我想,让我们在这里试一试。
我有一份这样的文件:
\documentclass[9pt,twoside]{article}
\usepackage[dutch]{babel}
\usepackage[a6paper]{geometry}
\begin{document}
% my document
\end{document}
效果非常好,可以生成多张 A6 页面。现在,我想要的是:我想在一张 A4 纵向页面上打印八张 A6 页面(即在一张 A4 面上打印四张 A6 页面)。
现在,最难的部分是:当这些 A4 纸打印出来后,我要把它们切成两半。然后,我要把 A4 纸的上半部分和下半部分叠在一起,垂直折叠,这样我就得到了一本 A6 的小书。
我认为下面的 ASCII 艺术有助于理解我想要做的事情。最后,我希望我的打印机打印以下内容:
A4 sheet #1 - back A4 sheet #1 - front A4 sheet #2 - back A4 sheet #2 - front
+--------|--------+ +--------|--------+ +--------|--------+ +--------|--------+
| | | | | | | | | | | |
| | | | | | | | | | | |
| page 8 | page 1 | | page 2 | page 7 | | page 6 | page 3 | | page 4 | page 5 |
| | | | | | | | | | | |
+--------|--------+ +--------|--------+ +--------|--------+ +--------|--------+
| | | | | | | | | | | |
| page 8 | page 1 | | page 2 | page 7 | | page 6 | page 3 | | page 4 | page 5 |
| | | | | | | | | | | |
| | | | | | | | | | | |
+--------|--------+ +--------|--------+ +--------|--------+ +--------|--------+
简而言之:我怎样才能让它发挥作用?
答案1
首先,我使用 cfr 中的辅助文档创建一个示例 8 页 A6 文档:
\documentclass[a6paper,twoside]{article}
\usepackage{geometry}
\usepackage{graphicx}
\pagestyle{empty}
\begin{document}
\centering
\scalebox{30}{1}\newpage
\scalebox{30}{2}\newpage
\scalebox{30}{3}\newpage
\scalebox{30}{4}\newpage
\scalebox{30}{5}\newpage
\scalebox{30}{6}\newpage
\scalebox{30}{7}\newpage
\scalebox{30}{8}
\end{document}
编译后,将得到一个名为 的文件a6.pdf
,其中包含 8 页,每页有 8 个大数字。
要按要求组装页面,您可以使用raster
的库tcolorbox
。没有太多拳击任何类型的,但只需几行代码您就可以获得文档:
\documentclass[a4paper]{article}
\usepackage[margin=0pt]{geometry}
\usepackage[skins,raster]{tcolorbox}
\pagestyle{empty}
\begin{document}
\begin{tcbraster}[raster height=\textheight,raster equal skip=0pt,blank,
graphics pages={8,1,8,1, 2,7,2,7, 6,3,6,3, 4,5,4,5}]
\tcbincludepdf{a6.pdf}% <-- The A6 document with 8 pages
\end{tcbraster}
\end{document}
结果是一份有 4 页的 A4 文档:
答案2
将多页内容排列在一张纸上的过程称为征收,对于印刷店来说这是一项很常见的任务,因此有专门的软件来实现这一目标。
虽然我确信这可以用 LaTeX 实现(而且比我更有经验的人很快就会想出一个好的解决方案 ;-),但我建议一种替代方法。您可以使用一个名为多价。
- 您需要在计算机上安装 Java。
- 从以下位置下载文件 multivalent.jar源码并将其放置在任何地方。
- 通过LaTeX创建一个8页的普通A6 pdf文档,并将其移动到同一目录。
- 多价是一个命令行工具,因此请在此目录中打开命令行。
类型(所有内容都在一行中)
java tool.pdf.Impose -paper A4 -dim 2x2 -page 8,1,8,1,2,7,2,7,6,3,6,3,4,5,4,5 nameofyoursourcedocument.pdf
有关此处发生的详细信息,请查看文档的多价。
在同一目录中找到结果 - 一个名为 nameofyoursourcedocument-im.pdf 的 pdf 文件
使用打印机双面打印选项中的“长边”设置打印结果。
希望这能有所帮助。不幸的是,我现在无法亲自测试。所以如果它不起作用,请报告。
答案3
首先创建 A6 页面(您已经完成):
\documentclass[a6paper,twoside]{article}
\usepackage{geometry}
\usepackage{graphicx}
\pagestyle{empty}
\begin{document}
\centering
\scalebox{30}{1}\newpage
\scalebox{30}{2}\newpage
\scalebox{30}{3}\newpage
\scalebox{30}{4}\newpage
\scalebox{30}{5}\newpage
\scalebox{30}{6}\newpage
\scalebox{30}{7}\newpage
\scalebox{30}{8}
\end{document}
假设生成的 PDF 是a6.pdf
。
然后创建 A5 小册子:
\documentclass[a5paper,twoside]{article}
\usepackage{pdfpages,geometry}
\begin{document}
\includepdf[pages=-,nup=1x2,landscape,signature=8]{a6}
\end{document}
然后您就可以创建最终版本了。假设 A5 页面为a5.pdf
:
\documentclass[a4paper,twoside]{article}
\usepackage{pdfpages,geometry}
\begin{document}
\includepdf[pages=-,nup=1x2,landscape,doublepagestwist*,turn=false]{a5}
\end{document}
答案4
TUG 文章解释了如何将 A6 页面拼版到 A4 纸张上,然后将其折叠起来形成一本书,请参阅https://tug.org/pracjourn/2006-3/venugopal-pocketbook/venugopal-pocketbook.pdf
逻辑如下,如果你有一本 A4 大小的 book.pdf,那么
\documentclass[a4paper]{article}
\usepackage[final]{pdfpages}
\begin{document}
\includepdf[pages=-,nup=1x2,landscape,signature=48]{book.pdf}
\end{document}
将使其可折叠一半,即使用 A4 纸折叠成 A5 再进行两次迭代将使其可按所需尺寸折叠。
我不知道如何将所有这些循环起来,但这是一种快捷的方法。