我的许多老师给我们一些用 beamer 制作的幻灯片,但从不包含源代码。为了打印它,我喜欢删除使用\pause
类似命令创建的无用幻灯片。
我尝试找到一些解决方案来自动删除它们,但由于我从未找到好的解决方案,我决定编写自己的解决方案并在答案中分享。如果您有更好的方法/更直接的解决方案,请毫不犹豫地添加它!
答案1
我想到了一个解决方案,即一行 bash 命令(您可以轻松地将其更改为别名/bash 脚本)。这个想法是当几张幻灯片具有相同的页码时,始终采用最后一张幻灯片。问题是,如果同一张幻灯片在同一“页面”上显示两个不同的内容,则只保留最后一张。
INPUT=mpri_clp1.pdf; OUTPUT=mpri_clp1_out2.pdf; (pdftk ${INPUT} dump_data | egrep "PageLabelNewIndex" | sed 's/[^0-9]//g' | sed '1d' | sed -r 's/(.*)/echo $((\1-1))/ge') | tr '\n' ' ' | xargs -I{} echo "pdftk \"${INPUT}\" cat {} end output \"${OUTPUT}\"" | bash