Command-Line

如何以隨機順序從 pdf 文件中隨機播放頁面?

  • September 23, 2018

我想以隨機順序隨機播放 pdf 文件的頁面。

如何才能做到這一點?

使用pdftk和 GNU coreutils

確定 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

引用自:https://unix.stackexchange.com/questions/209637