from reportlab.pdfgen import canvas
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
from PyPDF2 import PdfFileWriter, PdfFileReader
2.导入模块之后就是要使用canvas模块来绘制出文件水印的图像了,需要先调用TTFont()方法来将需要使用到的字体文件加载进来。然后就是去设置一下水印的坐标、字体、大小、颜色、倾斜角度等等参数,代码示例如下所示:
cans = canvas.Canvas('water_back.pdf', pagesize=(21 * cm, 29.7 * cm))
cans.setFont('songti', 23)
cans.setFillColorRGB(0.5, 0.5,0.5)
cans.rotate(45)
cans.drawString(-7 * cm, 0 * cm, ’水印文字’)
cans.save()
3.以上的代码就是打开了一个pdf文件并且在里面绘制了文字水印,但是一个pdf文件可能是有很多页的,所以接下来还需要将pdf文件之中的每一页都给读取出来然后添加文字水印,详细的代码示例如下所示:
water = PdfFileReader(water_pdf)
water_page = water.getPage(0)
for page in range(pdf.getNumPages()):
pdf_page = pdf.getPage(page)
pdf_page.mergePage(water_page)
pdf_writer.addPage(pdf_page)
output_file = open(output_pdf, 'wb')
pdf_writer.write(output_file)
以上就是python向pdf文件之中添加水印的全部过程了,代码方法里面的所有参数都需要根据自己实际需要改成对应的文件路径就可以了,output就是pdf文件添加完水印之后保存在目录中的文件路径。
PDF添加水印的方法:
步骤1,先下载软件,然后安装打开,这时候可以看到左边有两个功能,我们点击【PDF水印】功能进入下一步 *** 作。
步骤2,如下图所示点击蓝色的【添加文件】按钮,将需要添加水印的PDF文件添加到软件中,软件支持一次性给多个PDF文件添加水印,所以可以同时添加多个文件。
步骤3,添加好文件后就可以进行设置了,软件支持添加文字水印和图片水印,看你自己的需求,然后设置相关的参数(如水印的样式,大小,透明度,位置等)。上面可以对水印样式进行预览。
步骤4,设置好后就点击上方的【开始转换】按钮,启动软件程序,当软件处理完成后会自动打开一个文件夹,所有添加水印后的PDF文件会全部保存到这里。
步骤5,通过案例可以看出,PDF上每一页都成功加上了水印。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)