Veja uma variante do un2up
, que usa o Python com a biblioteca pyPdf
. Note que você precisa de pelo menos a versão 1.13 (versões anteriores não suportavam escalonamento). Não testado.
#!/usr/bin/env python
import copy, math, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for p in [input.getPage(i) for i in range(0,input.getNumPages())]:
p.scaleBy(math.sqrt(2))
q = copy.copy(p)
(w, h) = p.mediaBox.upperRight
p.mediaBox.upperRight = (w/2, h)
q.mediaBox.upperLeft = (w/2, h)
output.addPage(p)
output.addPage(q)
output.write(sys.stdout)