Tengo un archivo pdf que se convirtió en un formato de folleto. Está destinado a imprimir en papel A4 en orientación horizontal; Aquí hay dos páginas en el pdf, que deben corresponder a cuatro páginas en el libro real.
-------------------------------
| | |
| | |
| | |
| (1) | (3) |
| | |
| | |
| | |
-------------------------------
-------------------------------
| | |
| | |
| | |
| (4) | (2) |
| | |
| | |
| | |
-------------------------------
Los números entre corchetes corresponden al orden de las páginas individuales.
Sé que hay todo tipo de comandos (pdfbook, pdfnup, etc.) en Linux (que probablemente se usó para hacer este folleto en primer lugar). ¿Cómo puedo 'deshacerlo'? Es decir, me gustaría hacer un documento en PDF a partir de esto, donde cada página individual del producto final es una página individual del pdf, ordenada de la manera habitual.
Editar
Gracias a Gilles, logré usar el siguiente código:
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
second_half = []
for i in range(0,input.getNumPages()):
p = input.getPage(i)
q = copy.copy(p)
print >> sys.stderr, 'splitting page',i
print >> sys.stderr, '\tlowerLeft:',p.mediaBox.lowerLeft
print >> sys.stderr, '\tupperRight:',p.mediaBox.upperRight
p.mediaBox.upperRight = (ur[0], (bl[1]+ur[1])/2)
p.mediaBox.lowerLeft = bl
q.mediaBox.upperRight = ur
q.mediaBox.lowerLeft = (bl[0], (bl[1]+ur[1])/2)
if i % 2 == 0:
output.addPage(p)
qold = q
else:
output.addPage(q)
output.addPage(qold)
output.addPage(p)
output.write(sys.stdout)