123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- import PyPDF2
- import os
- import plac
- from pathlib import Path
- watermark_file = os.path.dirname(__file__) + '/template/Briefbogen_GC_Jahnstr_GmbH.pdf'
- def add_watermark(input_file):
- output_file = Path(input_file).parent.joinpath("mit_Briefpapier", Path(input_file).name)
- if not output_file.parent.exists():
- output_file.parent.mkdir()
- with open(input_file, "rb") as filehandle_input:
- # read content of the original file
- pdf = PyPDF2.PdfFileReader(filehandle_input)
- with open(watermark_file, "rb") as filehandle_watermark:
- # read content of the watermark
- watermark = PyPDF2.PdfFileReader(filehandle_watermark)
- # get first page of the watermark PDF
- first_page_watermark = watermark.getPage(0)
- # create a pdf writer object for the output file
- pdf_writer = PyPDF2.PdfFileWriter()
- # get first page of the original PDF
- for i in range(pdf.getNumPages()):
- current_page = pdf.getPage(i)
- # merge the two pages
- current_page.mergePage(first_page_watermark)
- # add page
- pdf_writer.addPage(current_page)
- with open(output_file, "wb") as filehandle_output:
- # write the watermarked file to the new file
- pdf_writer.write(filehandle_output)
- def add_watermark_to_folder(base_dir):
- for filename in Path(base_dir).glob('*.pdf'):
- add_watermark(str(filename))
- print(filename.name)
- if __name__ == '__main__':
- plac.call(add_watermark_to_folder)
- # add_watermark_to_folder(os.path.dirname(__file__) + '/data/')
|