ゆるプロ!番外編「PDFの指定ページを削除する」
ゆるいプログラミング講座、略して「ゆるプロ!」
これは気軽に気楽に試せるゆるーいプログラミング学習コンテンツである。今回のお題は「PDFの指定ページを削除する」
一言)
Adobe ReaderのAcrobat等を使わないとPDFのページ削除ができないと思っていたが、そんなことはなかった。ツールがないときとかに便利である。
例)PDFの指定ページを削除する
今回は0ページと93ページを削除する。直接、削除するメソッドが見当たらなかったので、StackOverflowより考え方を学んだ。
#ページの削除
import pypdf
pages_to_delete = [0, 93] # page numbering starts from 0
infile = pypdf.PdfReader("sample.pdf", "rb")
output = pypdf.PdfWriter()
for i in range(len(infile.pages)):
if i not in pages_to_delete:
p = infile.pages[i]
output.add_page(p)
with open("output.pdf", "wb") as f:
output.write(f)
結果)
こちらの記事をもとにメタデータを再度、確認したらProducer: pypdfとなっていたので、追加で変更しておいた。
参考)
How to delete pages from pdf file using Python?
おわり!