Python办公自动化:给pdf加水印

简介: Python办公自动化:给pdf加水印

本期,利用python来给pdf文件加水印,我们先来看看wps能不能做这个事情。

可以还是可以的,但需要付费 ,一年118 。但有了python,不存在付费情况,直接上代码:


import PyPDF2from PyPDF2 import PdfFileReader, PdfFileWriterfrom reportlab.lib.units import cmfrom reportlab.pdfgen import canvas
#创建一个水印文件def create_watermark(content):    # 默认大小为21cm*29.7cm    file_name = "mark.pdf"    c = canvas.Canvas(file_name, pagesize=(30*cm, 30*cm))    # 移动坐标原点(坐标系左下为(0,0))    c.translate(10*cm, 5*cm)
    # 设置字体    c.setFont("songti", 30)    # 指定描边的颜色    c.setStrokeColorRGB(0, 1, 0)    # 指定填充颜色    c.setFillColorRGB(0, 1, 0)    # 旋转45度,坐标系被旋转    c.rotate(30)    # 指定填充颜色    c.setFillColorRGB(0, 0, 0, 0.1)    # 设置透明度,1为不透明    # c.setFillAlpha(0.1)    # 画几个文本,注意坐标系旋转的影响    for i in range(5):        for j in range(10):            a=10*(i-1)            b=5*(j-2)            c.drawString(a*cm, b*cm, content)            c.setFillAlpha(0.1)    # 关闭并保存pdf文件    c.save()    return file_name
create_watermark(r'半个码农2018')
# 打开原文件和水印图片文件pdf_file = open('input.pdf', 'rb')watermark_file = open('mark.pdf', 'rb')
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 创建一个PdfFileWriter对象pdf_writer = PyPDF2.PdfFileWriter()
# 获取水印图片文件watermark = PyPDF2.PdfFileReader(watermark_file)
# 遍历原文件的每一页,添加水印for page_num in range(pdf_reader.getNumPages()):    page = pdf_reader.getPage(page_num)    page.mergePage(watermark.getPage(0))    pdf_writer.addPage(page)
# 保存加水印后的文件result_pdf = open('加水印后文件.pdf', 'wb')pdf_writer.write(result_pdf)result_pdf.close()
# 关闭文件pdf_file.close()watermark_file.close()

跑一遍,看看效果:

这不,“半个码农2018”的水印就加上了,文字随时可改,还不要钱,哈哈哈

相关文章
|
1月前
|
数据采集 Web App开发 JavaScript
Puppeteer自动化:使用JavaScript定制PDF下载
在现代Web开发中,自动化工具如Puppeteer可显著提升效率并减少重复工作。Puppeteer是一款强大的Node.js库,能够控制无头Chrome或Chromium浏览器,适用于网页快照生成、数据抓取及自动化测试等任务。本文通过示例展示了如何使用Puppeteer自动化生成定制化的PDF文件,并介绍了如何通过配置代理IP、设置user-agent和cookie等技术增强自动化过程的灵活性与稳定性。具体步骤包括安装Puppeteer、配置代理IP、设置user-agent和cookie等,最终生成符合需求的PDF文件。此技术可应用于报表生成、发票打印等多种场景。
112 6
Puppeteer自动化:使用JavaScript定制PDF下载
|
7天前
|
数据采集 IDE 测试技术
Python实现自动化办公:从基础到实践###
【10月更文挑战第21天】 本文将探讨如何利用Python编程语言实现自动化办公,从基础概念到实际操作,涵盖常用库、脚本编写技巧及实战案例。通过本文,读者将掌握使用Python提升工作效率的方法,减少重复性劳动,提高工作质量。 ###
20 1
|
15天前
|
数据管理 程序员 数据处理
利用Python自动化办公:从基础到实践####
本文深入探讨了如何运用Python脚本实现办公自动化,通过具体案例展示了从数据处理、文件管理到邮件发送等常见办公任务的自动化流程。旨在为非程序员提供一份简明扼要的实践指南,帮助他们理解并应用Python在提高工作效率方面的潜力。 ####
|
1月前
|
Python
Python对PDF文件页面的旋转和切割
Python对PDF文件页面的旋转和切割
|
1月前
|
计算机视觉 Python
Python操作PDF文件
Python操作PDF文件
|
1月前
|
存储 安全 网络安全
Python编程--使用PyPDF解析PDF文件中的元数据
Python编程--使用PyPDF解析PDF文件中的元数据
|
1月前
|
存储 BI 数据库
使用 Python 实现自动化办公
使用 Python 实现自动化办公
|
1月前
|
算法 Java 程序员
【福利😍】2024年最新103本互联网大厂程序员编程书合集【高清文字版无水印pdf】
推荐优质编程电子书资源,涵盖Python入门、算法设计、Java高并发、Docker、机器学习等领域,适合从小白到高级开发者。书籍包括《编程小白的第一本Python入门书》、《编程珠玑》等,助你提升技能,紧跟技术前沿,在职场中脱颖而出。下载地址含国内外网盘链接,更多资源可访问资料吧网站获取。
134 0
|
1月前
|
IDE 开发工具 数据安全/隐私保护
Python编程实现批量md5加密pdf文件
Python编程实现批量md5加密pdf文件
|
1月前
|
机器学习/深度学习 人工智能 运维
构建高效运维体系:从自动化到智能化的演进
本文探讨了如何通过自动化和智能化手段,提升IT运维效率与质量。首先介绍了自动化在简化操作、减少错误中的作用;然后阐述了智能化技术如AI在预测故障、优化资源中的应用;最后讨论了如何构建一个既自动化又智能的运维体系,以实现高效、稳定和安全的IT环境。
65 4