用python给pdf批量添加水印,并给pdf加密

本文部分参考:https://blog.csdn.net/oh5w6hinug43jvrhhb/article/details/80879026

本文先分别讲解整个代码各个步骤的含义,最后会附上完整代码,需要的童鞋可以边对照代码边理解本文。

  1. 设置路径
import os
os.getcwd() 
os.chdir('E:\\python\\test\\pdf批量加水印\\')

先设置路径,把需要加水印的相关文档放入一个目录下。我的目录是:E:\python\test\pdf批量加水印os.chdir('E:\\python\\test\\pdf批量加水印\\')

  1. 准备水印pdf文件
from reportlab.pdfgen import canvas
from reportlab.lib.units import cm
from reportlab.pdfbase import pdfmetrics 
from reportlab.pdfbase.ttfonts import TTFont 
pdfmetrics.registerFont(TTFont('song', 'C:/Windows/Fonts/simsun.ttc'))#宋体
from PyPDF2 import PdfFileWriter,PdfFileReader
import xlrd

def create_watermark(content):
    #默认大小为21cm*29.7cm
    c = canvas.Canvas('mark.pdf', pagesize = (30*cm, 30*cm))   
    c.translate(10*cm, 10*cm) #移动坐标原点(坐标系左下为(0,0)))                                                                                                                             
    c.setFont('song',22)#设置字体为宋体,大小22号
    c.setFillColorRGB(0.5,0.5,0.5)#灰色                                                                                                                         
    c.rotate(45)#旋转45度,坐标系被旋转
    c.drawString(-7*cm, 0*cm, content)
    c.drawString(7*cm, 0*cm, content)
    c.drawString(0*cm, 7*cm, content)
    c.drawString(0*cm, -7*cm, content)                                                                               
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值