Добавление закладки в объединенные PDF с использованием pyPDF2 - PullRequest
0 голосов
/ 10 января 2020

Мне нужно добавить закладку в новый созданный PDF-файл. Я использую скрипт, который объединяет все PDF-файлы из текущего каталога с помощью pyPDF2. Я буду хорошо иметь структурированную закладку с названием каждого PDF-файла. Каждый PDF-файл может содержать 1-2-3 страницы.

Код, который работает для объединения всех PDF-файлов из каталога:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from argparse import ArgumentParser
from glob import glob
from PyPDF2 import PdfFileReader, PdfFileWriter
import os
def merge(path, output_filename):
    output = PdfFileWriter()
    for pdffile in glob(path + os.sep + '*.pdf'):
        if pdffile == output_filename:
            continue
        print("Se adauga '%s'" % pdffile)
        document = PdfFileReader(open(pdffile, 'rb'))
        for i in range(document.getNumPages()):
            output.addPage(document.getPage(i))

    print("S-a creat pdf '%s'" % output_filename)
    with open(output_filename, "wb") as f:
                output.write(f)
if __name__ == "__main__":
    parser = ArgumentParser()
    # Add more options if you like
    parser.add_argument("-o", "--output",
                        dest="output_filename",
                        default="Test.pdf",
                        help="write merged PDF to FILE",
                        metavar="FILE")
    parser.add_argument("-p", "--path",
                        dest="path",
                        default=".",
                        help="path of source PDF files")
    args = parser.parse_args()
    merge(args.path, args.output_filename)
...