Ubuntu – How to print a large single page in several small pages


My use case is an A3 pdf landscape sheet that I needed printed in two A4 portraits. I am using desktop ubuntu 16.04.

What I have tried
What I have managed to do is use a command-line program that helps:
Split/Tile A3 (landscape) pdf to A4 (portrait)
how to print a single image in the 4 corners of the paper?

Also I have found Printing a poster (over several sheets of paper) but the solution uses a GUI version of the above command line options but does not seem to work with PDF or SVG.

Another option would be the print to file option mentioned in this answer. But even though I request it to print A4 size it just prints a new PDF which is A3 size.

What I would like is to have the option in the print dialogue.

I have a feeling that if I use the right settings it should work. But for example, the following settings on Page Setup and on Page Handling:
Print Page Setup Settings
Print Page Handling Settings

When I click preview I see the full A3 sheet in one landscape page I still press print in the hope that it will do what I want but:

It prints only the top right corner in landscape which I do not understand the logic.

Following the comment: If the box labelled "select page size using document page size" under the Page Handling tab is un-ticked then I get half the job done: It will print only the left hand side in an A4 portrait which is what I want. But I will still be missing the right hand side.

Use cases: Printing posters A2, A1 and A0 size when you don't have access to a plotter or to check for typos, printing engineering drawings when you don't have access to A3 printer or simply ran out of A3 paper and printing large images into parts

Best Answer

No, you can't do that from the standard print dialog.

The option "Pages per side" in print dialog is useful to print many-to-one and not one-to-many. The former is to print using less sheets, whilst the opposite is to print posters (known as tiled printing).

But I see such option?

GTK+ has the option named "Pages per side". In other graphical toolkit or application however, such option may be found as "Number-up" (Qt) or "N-up printing" (Scribus). Not all application has this option, however.

Despite naming is different, the purpose is same: to adjust the number of "pages" to be printed on each "sheet".

  • "pages" refers to the content that is read by an application, usually from an existing file that has been created beforehand. This is what we have.

  • "sheet" refers to the content that will be printed via a hardware printer or, that will be saved to a new file. This is what we will get.

For simplicity, understand "pages" as the input and "sheets" as the output.

But I have six tabs?

The print dialog may have extra or limited options based on what is supported by the graphical toolkit or application. For GTK+ standard print dialog, most users will have these two tabs: General, Page Setup. In fact, only the first two tabs are common. I have noted few examples as follows.

  • Firefox, when choosing "Print to file" in the print dialog, has three tabs (General, Page Setup, Options).

  • Mousepad has three tabs similarly, but the last tab has a different name (Document Settings) with different options.

  • Evince is relatively more similar to Firefox, except the third tab has another different name (Page Handling) with another different options.

When selecting other type of printer however, users may have up to six tabs (General, Page Setup, Options, Job, Image Quality, Colour) with extended options. Many GTK+ applications do, but not all applications have additional tabs with extended options.

But I get half the job done?

Notice that "half the job done" is found at left side, regardless of paper orientation (Illustration 1a). This is due to the origin (0,0) is located at the left corner, similar to a display screen.

                    Illustration 1a

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

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

When the page is even more larger than the sheet, the result is more apparent (Illustration 1b). Consider A2:A4 (size factor of 1:4) instead of A3:A4 (size factor of 1:2). The result is similar: only left side is printed.

                    Illustration 1b

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

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

Therefore, the right half area will not appear because the option "Pages per side" is simply not intended to work as tiled printing. The left and right sides may be reversed (so far I have not seen this effect), due to the page handling or whatever combination of options being tried.

But I just want another half?

From the earlier explanation, recall that "pages" is input and "sheet" is output. With that understanding in mind, consider three use cases:

  1. One-to-one. Given a document containing only one page, the result is printed to only one sheet for sure (Illustration 2a).

               Illustration 2a
    +---------+            +-------------+
    |         |            |             |
    |         |            |             |
    |         |            |1            |
    |         |            +-------------+
    |1        |
    portrait page with     landscape page with
    1 pp/side sheet        1 pp/side sheet
  2. Many-to-one. Given a document containing total of, say, 10 pages, the result can be either printed to: 5 sheets with 2 pages per side; 3 sheets with 4 pages per side; or 2 sheets with 6 pages per side. Depending on whether pages are portrait (Illustration 2b) or landscape (Illustration 2c), the best fit for the sheet may vary for each option.

               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. One-to-many. By using only the option "Pages per side" in the print dialog, this is impossible.

Use case 1 is the most basic use. Certain options allow users to adjust the fit, when the page has different paper size or orientation. Hence a single large page A3 could be printed on a single smaller sheet A4 by scaling down the content.

Use case 2 is more likely used by students who want to print a handout that consists of 30 presentation slides. Instead of 30 sheets of paper, use 6 pages per side and the result is printed to only 5 sheets of paper. That saves 25 sheets or 80% less paper!

Use case 3 is not possible because there is no such option in the standard print dialog on Linux; so that "another half" is also not possible.

Tiled printing on Linux

Being an end-user on Linux for the past ten years, I would say not even a single application on Linux has a standard print dialog that supports tiled printing. Other users may disagree.

Any application that supports tiled printing would have a different option called "Poster" (Adobe Reader X; Windows only), "Tile" or something similar. Such option is non-existent on Linux, well, almost.

To be exact, few command line and graphical applications on Linux do support tiled printing, but the standard print dialog on Linux does not.

What does all above mean

Following the long explanations above, a document containing a large single page will be printed to a single sheet regardless. And given that the large page is A3 and the sheet is A4, only half or two-third of A3 is printed, depending on the paper orientation (Illustration 1a).

TL;DR "Pages per side" is to print using less sheets and not for posters. Tiled printing is not possible from the standard print dialog on Linux, as of 2018. Should be suggested for improvement, not a bug.