2
1
I'm looking for a series of commands to randomize the order of pages in an existing PDF document.
2
1
I'm looking for a series of commands to randomize the order of pages in an existing PDF document.
2
Turns out, there's a nice python library pyPDF which can be used in the following script to randomize the order of pages in a PDF document.
The script below, call it mixpdf, creates a copy of an input PDF file with randomly reordered pages when called by the statement mixpdf myinputfile.pdf.
#!/usr/bin/python
import sys
import random
from pyPdf import PdfFileWriter, PdfFileReader
# read input pdf and instantiate output pdf
output = PdfFileWriter()
input1 = PdfFileReader(file(sys.argv[1],"rb"))
# construct and shuffle page number list
pages = list(range(input1.getNumPages()))
random.shuffle(pages)
# display new sequence
print 'Reordering pages according to sequence:'
print pages
# add the new sequence of pages to output pdf
for page in pages:
output.addPage(input1.getPage(page))
# write the output pdf to file
outputStream = file(sys.argv[1]+'-mixed.pdf','wb')
output.write(outputStream)
outputStream.close()
See also How can I shuffle pages from a PDF file in a random order? (on Unix&Linux)
– G-Man Says 'Reinstate Monica' – 2015-06-14T21:38:42.083