PDF文書のページをランダムな順序で混ぜたい。
これはどのように達成できますか?
ベストアンサー1
そしてpdftkとGNUコアユーティリティ
PDFファイルのページ数を決定してから呼び出します。shuf
任意のページ番号のリストを生成し、pdftk
それを再度呼び出して指定されたページシーケンスを抽出します。
pdftk original.pdf cat $(shuf 1-$(pdftk original.pdf dump_data | awk '$1=="NumberOfPages:" {print $2}')) output randomized.pdf
Pythonを使ってpypdf
#!/usr/bin/env python2
import random, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
pages = range(input.getNumPages())
random.shuffle(pages)
for i in pages:
output.addPage(input.getPage(i))
output.write(sys.stdout)'
使用法:/path/to/script <original.pdf >randomized.pdf