PDFファイルのページをランダムな順序で混在させる方法は?

PDFファイルのページをランダムな順序で混在させる方法は?

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

おすすめ記事