如何将一张大页面打印成几张小页面?

如何将一张大页面打印成几张小页面?

我的用例是一张 A3 横向 pdf 纸,我需要将其打印成两张 A4 纵向纸。我使用的是桌面版 ubuntu 16.04。

我尝试过 我已设法使用一个命令行程序来帮助: 分割/平铺 A3(横向)pdf 至 A4(纵向) 或者 如何在纸张的四个角打印单幅图像?

我还发现打印海报(打印在多张纸上)但该解决方案使用上述命令行选项的 GUI 版本,但似乎不适用于 PDF 或 SVG。

另一个选项是这个答案。但即使我要求它打印 A4 尺寸,它也只会打印 A3 尺寸的新 PDF。

我想要的是在打印对话框中有选项。

我觉得如果我使用正确的设置,它应该可以工作。但例如,页面设置和页面处理上的以下设置: 打印页面设置设置 打印页面处理设置

当我单击预览时,我在一个横向页面中看到了整张 A3 纸,我仍然按下打印,希望它能实现我想要的效果,但是:

它仅以横向打印右上角,我不明白其中的逻辑。

评论如下:如果取消选中“页面处理”选项卡下标有“使用文档页面大小选择页面大小”的框,那么我就完成了一半的工作:它将仅打印 A4 纵向左侧,这正是我想要的。但我仍然会错过右侧。

用例:当您无法使用绘图仪或需要检查是否有错别字时,可以打印 A2、A1 和 A0 尺寸的海报;当您无法使用 A3 打印机或 A3 纸用完时,可以打印工程图;还可以将大图像打印成零件

答案1

pdftools.PDF海报

sudo apt install pdfposter
pdfposter --help

例如,将海报转换为 3x3 信纸大小

pdfposter -p3x3 Let my_1_large_page.pdf my_9_small_pages.pdf

答案2

不,您不能通过标准打印对话框执行此操作。

打印对话框中的“每面页数”选项对于多对一打印很有用,并且不是一对多。前者是使用较少的纸张进行打印,而后者是打印海报(称为平铺打印)。

但我看到了这样的选项?

GTK+ 有名为“每面页数”的选项。然而,在其他图形工具包或应用程序中,此类选项可能被称为“Number-up”(Qt)或“N-up 打印”(Scribus)。然而,并非所有应用程序都有此选项。

虽然叫法不同,但是目的是一样的,就是调整每张“纸”上打印的“页数”。

  • “页面”是指应用程序读取的内容,通常是从预先创建的现有文件中读取的。这就是我们有

  • “sheet” 指的是将通过硬件打印机打印的内容,或将保存到新文件中的内容。这就是我们将得到

为简单起见,将“页面”理解为输入,“表格”理解为输出。

但我有六个标签?

根据图形工具包或应用程序所支持的内容,打印对话框可能具有额外或有限的选项。对于 GTK+ 标准打印对话框,大多数用户将拥有这两个选项卡:常规、页面设置。事实上,只有前两个选项卡是常见的。我记下了以下几个例子。

  • Firefox 在打印对话框中选择“打印到文件”时,有三个选项卡(常规、页面设置、选项)。

  • Mousepad 类似地有三个选项卡,但最后一个选项卡的名称(文档设置)不同,并且选项也不同。

  • Evince 与 Firefox 相对更相似,只是第三个选项卡有另一个不同的名称(页面处理)和另一个不同的选项。

但是,当选择其他类型的打印机时,用户可能会有最多六​​个带有扩展选项的选项卡(常规、页面设置、选项、作业、图像质量、颜色)。许多 GTK+ 应用程序都有,但并非所有应用程序都有带有扩展选项的附加选项卡。

但我已经完成一半的工作了?

请注意,“完成一半的工作”位于左边不管纸张方向如何,图像都会在一侧显示出来(图 1a)。这是因为原点 (0,0) 位于左边角落,类似于显示屏。

                    Illustration 1a

+----------+----------+      +-------------+-------+
|0,0       |          |      |0,0          |       |
|          |          |      |             |       |
|          |          |      |          A4 |       |
|          |          |      |-------------+       |
|       A4 |          |      |                     |
+----------+----------+      +---------------------+
                    A3                           A3

A3 page printed to A4 sheet,
when page scaling is none or ignored

当页面比纸张更大时,结果更加明显(图 1b)。考虑使用 A2:A4(尺寸因子为 1:4),而不是 A3:A4(尺寸因子为 1:2)。结果类似:只有左边面已打印。

                    Illustration 1b

+----------+----------+      +-------------+-------+
|0,0       |          |      |0,0          |       |
|          |          |      |             |       |
|          |          |      |          A4 |       |
|          |          |      |-------------+       |
|       A4 |          |      |                     |
|----------+          |      |                     |
|                     |      |                     |
|                     |      |                     |
|                     |      |                     |
|                     |      |                     |
+---------------------+      +---------------------+
                    A2                           A2

A2 page printed to A4 sheet,
when page scaling is none or ignored

因此,右半部分区域不会出现,因为“每面页数”选项根本不适合平铺打印。由于页面处理或尝试的任何选项组合,左右两边可能会反转(到目前为止我还没有看到这种效果)。

但我只想要另一半?

从前面的解释中,回想一下,“pages”是输入,“sheet”是输出。考虑到这一点,请考虑三个用例:

  1. 一对一。如果文档只有一页,则结果肯定只打印在一张纸上(图 2a)。

               Illustration 2a
    
    +---------+            +-------------+
    |         |            |             |
    |         |            |             |
    |         |            |1            |
    |         |            +-------------+
    |1        |
    +---------+
    portrait page with     landscape page with
    1 pp/side sheet        1 pp/side sheet
    
  2. 多对一。假设一份文档总共包含 10 页,则结果可以打印到:5 张纸,每面 2 页;3 张纸,每面 4 页;或 2 张纸,每面 6 页。根据页面是纵向(图 2b)还是横向(图 2c),每个选项最适合纸张的大小可能不同。

               Illustration 2b
    
    +------+------+          +----+----+ 
    |      |      |          |    |    |
    |      |      |          |1   |2   |
    |1     |2     |          +----+----+
    +------+------+          |    |    |
                             |3   |4   |
                             +----+----+
    portrait pages with      portrait pages with
    2 pp/side sheet          4 pp/side sheet
    
               Illustration 2c
    
    +---------+              +------+------+
    |         |              |1     |2     |
    |1        |              +------+------+
    +---------+              |3     |4     |
    |         |              +------+------+
    |2        |
    +---------+
    landscape pages with     landscape pages with
    2 pp/side sheet          4 pp/side sheet
    
  3. 一对多。如果只使用打印对话框中的“每面页数”选项,则无法实现这一点。

用例 1 是最基本的用途。当页面具有不同的纸张尺寸或方向时,某些选项允许用户调整适合度。因此,可以通过缩小内容将一张大页面 A3 打印在一张较小的页面 A4 上。

用例 2 更适合那些想要打印包含 30 张演示幻灯片的讲义的学生。每面使用 6 页而不是 30 张纸,结果打印到仅 5 张纸上。这样可以节省 25 张纸或 80% 的纸张!

用例 3 是不可能的,因为 Linux 上的标准打印对话框中没有这样的选项;所以“另一半”也是不可能的。

Linux 上的平铺打印

作为过去十年 Linux 的最终用户,我想说甚至没有一个应用程序在 Linux 上有一个标准支持平铺打印的打印对话框。其他用户可能不同意。

任何支持平铺打印的应用程序都会有一个名为“海报”(Adobe Reader X;仅限 Windows)、“平铺”或类似名称的不同选项。Linux 上几乎没有这样的选项。

确切地说,Linux 上很少有命令行和图形应用程序支持平铺打印,但 Linux 上的标准打印对话框不支持。

以上所有是什么意思

按照上面的长篇解释,无论如何,包含大单页的文档都会打印到一张纸上。考虑到大页面是 A3,纸张是 A4,因此只会打印 A3 的一半或三分之二,具体取决于纸张方向(图 1a)。

总结“每面页数”是为了使用较少的纸张进行打印,而不是用于海报。自 2018 年起,Linux 上的标准打印对话框无法进行平铺打印。应该建议改进,而不是错误。

答案3

这应该可以工作:如果你只有一台 A4 打印机,而你想打印 2 张包含一张 A3 画布的 A4 物理页面,那么它应该可以工作,所以你应该提交错误与 inkscape 开发人员一起。

答案4

这篇文章通过推荐解决了我的问题pdfposter。我用来对图像进行色调分离的步骤如下:

  1. 使用应用程序(Inkscape、Gimp 等)将图像调整为所需尺寸并将其保存为 PDF 文件。

  2. 使用此命令无需进一步缩放即可打印:

    pdfposter -s1 -mlet input.pdf output.pdf
    

感谢 Hartmut Goebel ([电子邮件保护]) 是一款出色的实用应用程序!

相关内容