I would like to print a pdf file in the following way: Suppose document.pdf has 30 pages. The page order should be: 1,16;2,17;3,18; ... 15,30 (i.e. two pages per side, one-sided).

Is there any easy solution for that in linux?


After printing, I want to cut the pages into half, so I get A/5 pages, and I don't want to reorder the sheets manually.

  • What program is that generated in? Depending on it you might have certain options or not. Printing in booklet format on Ask Ubuntu. – Seth Aug 11 '17 at 10:17
  • It's generated in latex. I don't want to print booklet format. – bmv Aug 11 '17 at 10:42

For a command line solution use pdftk's shuffle to get a new pdf with pages arranged in the desired order. Then use pdfjam to put 2 pages on one side by side.

pdftk input.pdf shuffle 1-15 16-End output temp.pdf

pdfjam temp.pdf --nup 2x1 --letterpaper --landscape --outfile output.pdf

EDIT just tested my suggestion from comment to turn second half 180° to have similar borders and it did work a treat with a 4 page sample pdf:

pdftk input.pdf cat 1-2 output temp1.pdf
pdftk input.pdf cat 3-4south output temp2.pdf
pdftk A=temp1.pdf B=temp2.pdf shuffle A B output temp.pdf

pdfjam temp.pdf --nup 2x1 --a4paper --landscape --outfile output.pdf

Albeit testing under windows and using Acrobat Reader for printing 2in1

enter image description here

  • 1
    Using your solution and pdftk's dump_data I was able to write a script where you don't have to specify the middle page manually. pdftk my.pdf dump_data | grep NumberOfPages – bmv Aug 15 '17 at 8:18
  • Might be a good idea then to turn the second half 180 degrees so printing margins wouldn't produce different borders – LotPings Aug 15 '17 at 8:31
  • How to turn the second half 180 degrees? – bmv Aug 15 '17 at 14:46
  • See pdftk cat – LotPings Aug 15 '17 at 14:49

Open the print dialog of Acrobat Reader, give the sequence of pages to print (1,16,2,17,3,18 ... 15,30) and select multiple for two pages per sheet.

  • I want to avoid specifying manually the sequence of pages to print. – bmv Aug 15 '17 at 7:08
  • You just asked for an easy solution. You probably should spend some more time refining your question. In addition you can easily generate that sequence using a script. The easiest solution to your problem would be to actually print in A5. – Seth Aug 15 '17 at 7:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.