PDF文件去除水印,pdf去水印的三种方法

  PDF文件去除水印,pdf去水印的三种方法

  本文主要介绍如何使用Python实现PDF水印去除功能。通过示例代码进行了非常详细的介绍,对大家的学习或工作有一定的参考价值。有需要的朋友就跟着下面的边肖学习吧。

  00-1010前言原则特色结果安装取决于代码理念

  

目录

 

  你为什么做这个?

  有时候从网上下载的pdf有水印,看着不舒服。

  比如我从网上下载试卷,然后去打印店打印。打印出来后水印看着不舒服,而去水印的wps需要会员,我是程序员。为什么不做一个呢?为什么不做呢?

  虽然最后还是做出来了,但还是有局限性。

  

前言

 

  将pdf转换为图片,然后给图片添加水印。

  水印是有条件的。水印的颜色必须与pdf中文本的rgb不同,然后将水印的颜色改为背景色。

  

原理

 

  很多网上的水印原理和我的差不多,但是都是先把pdf转换成图像并存储,然后对图像进行水印处理,再把图像拼接成pdf。

  而且我不需要中间步骤。我直接输入输出pdf文件。

  

特色

 

  

成果

 

  图像

  pip安装枕头

  菲茨

  pip安装PyMuPDF

  

安装依赖

 

  程序处理pdf需要很长时间(因为像素被处理)。您可以先测试较少页面的pdf,然后再移除较多页面的pdf。

  从PIL进口图片

  导入操作系统

  导入io

  导入fitz

  导入时间

  def single _ pdf _ clear water(pdf _ path : str):

  Pdf=fitz.open(Pdf_path) #打开pdf目录

  Pdf_img=fitz.open() #打开一个空文件保存图片Pdf

  对于pdf:中的page_inf

  Definition=3 # definition,感觉输出的pdf不够清晰,可以放大,文件大小也会变大。

  matrix=fitz。矩阵(定义,定义)

  img=page _ INF . get _ pixmap(matrix=matrix)。兆字节()

  img=Image.open(io。字节数(img))

  宽度,高度=img.size

  对于范围(宽度):内的I

  对于范围(高度):内的j

  如果sum (img.getpixel ((i,j)) 6003360 # 600这里你需要根据你的水印的颜色来改变。

  img.putpixel((i,j),(255,255,255))

  img=img . tobytes()#=img=NP . as array(img);img=字节数组(img)

  img=fitz。像素图(fitz.csRGB,宽度,高度,图像)

  img=img.tobytes()

  img=fitz.open(png ,img)

  pdf_bytes=img.convert_to_pdf()

  pdf _ img . insert _ pdf(fitz . open( pdf ,pdf_bytes))

  如果不是os.path.exists(“输出”):

  Os.makedirs(output) #处理后的pdf存储在输出目录中。

  pdf _ img . save( output/watered pdf _ OS . path . basename(pdf _ path))

  def group _ pdf _ clear water(path _ array : list[str]):

  打印( * * * * * * * * * * * *去除水印需要很长时间* * * * * * * * )

  对于path_array:中的pdf_path

  打印(pdf_path,转到水印.)

  单一_pdf_clearwater(pdf_path)

  打印(“完成”)

  DEF _ pdf _ Files(folder : STR)-List[STR]: #一个文件夹中有多少个PDF文件?

  file_list=[]

  用于os.walk(文件夹):中的a、b、c

  如果b==[]:

  对于c:中的文件名

  如果文件名[-3:]。lower()==pdf:

  file_path=os.path.join(a,文件名)

  file_list.append(文件路径)

  打印(文件夹, 3360有,len(文件列表), pdf文件)

  返回文件列表

  if __name__==__main__:

  time_start=time.time()

  path _ list=folder _ pdf _ files( pdf目录)

  group_pdf_clearwater(路径_列表)

  time_end=time.time()

  Print(程序运行时间:,round(time_end-time_start,2),秒)

  

代码

 

  虽然最终实现了,但也有局限性。

  为了去掉保存后拍照这个中间步骤,我查阅了很多文献资料,后来发现只有我最不想看的英文文献找到了问题的答案。我只是觉得偏颇之处只存在于英语文学中。

  因为限制,不知道能不能用python-普通pdf的水印逆向思维操作,就是直接把水印图层拿出来。

  如果要处理的pdf文件很多,页面很多,程序就会运行很长时间,让我感觉像是深度学习。

  这就是这篇关于Python的PDF水印去除示例代码的文章。关于Python PDF水印去除的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • php读取pdf数据,php pdf读取
  • php读取pdf数据,php pdf读取,PHP中使用mpdf 导出PDF文件的实现方法
  • kotlon协程,深入理解kotlin协程pdf,一文彻底搞懂Kotlin中的协程
  • 深入解析C#(第4版),深入解析css pdf,深入解析contentWindow, contentDocument
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf
  • java 反射机制原理与用法详解视频,java 反射机制原理与用法详解pdf,Java 反射机制原理与用法详解
  • ,,Java使用iTextPDF生成PDF文件的实现方法
  • ,,Python利用PyMuPDF实现PDF文件处理
  • 漫画算法小灰的算法之旅pdf,漫画算法2-小灰的算法进阶
  • devops和自动化运维实践 PDF,devops思想在运维方面的具体实践
  • pdf如何去除水印,pdf去水印的三种方法
  • 把a4的内容打印成a3小册子,a4的pdf文档如何打印成a3
  • nlp自然语言处理入门pdf,精通python自然语言处理 pdf
  • 容器docker基本操作,每天5分钟玩转docker容器技术 pdf
  • sklearn中文手册pdf下载,sklearn库模块及函数
  • 留言与评论(共有 条评论)
       
    验证码: