当前位置: 首页>JAVA>正文

pdf去水印軟件免費版,java批量去除pdf簽名,刪除簽名圖標

pdf去水印軟件免費版,java批量去除pdf簽名,刪除簽名圖標

1.需求

接到這樣一個需求,現在有大量的pdf文件按需要去除簽名,和文件里的簽名圖標。pdf包含圖標等復雜元素,使用了icepdf操作pdf

2.思路

如果單獨只是去除簽名,直接就能想到pdf轉圖片,再將圖片合成pdf即可,如果有這個需求直接點擊 網盤鏈接,密碼私信我

3.單獨只是去除簽名

在這里插入圖片描述
需要操作兩個文件Main、和ImageToPDF,

3.1 Main:

這個類是將pdf切片成圖片
在這里插入圖片描述
參數說明:path是一個文件夾,里面包含若干pdf文件,savepath是生成的pdf圖片的文件夾,里面包含若干文件夾,文件名稱是pdf名,里面是png圖片,有幾頁就有幾張圖片

3.2 ImageToPDF

pdf去水印軟件免費版,這個類是將上面切成的圖片轉成pdf文件
在這里插入圖片描述

如果你只是單純的去除文件打開后顯示有簽名,那么到現在你已經成功了,如果你想繼續去除pdf里的簽名圖標請繼續往下看

4.去除pdf文件中的簽名圖標

來看個例子例1
在這里插入圖片描述

類似這種的簽名圖標非常不好看,通常pdf背景是白色的,可以想到用白色蓋住圖標就可以了,但是每個圖標的位置沒法確定,接下來介紹如何確定簽名圖標的位置

5. 如何確定簽名圖標的位置?

由于簽名圖標的位置不唯一,接下來會介紹3種方法,效果最好的是5.3

5.1 函數法

此方法適用于 圖標的簽名文字位置一定,圖標大小,顏色一定且與pdf背景色不近似的情況下,我們之前的到了pdf的圖片文件,通過獲取圖片中像素的RGB分布,例如上圖的圖標,我們可以用ps打開上面的圖片,用顏色吸取圖標顏色,R:0 G:134 B:219,使用java循環遍歷圖片的像素,如果像素的rgb在這個區間,記錄像素的橫縱坐標,對得到的像素坐標求和取平均值,就可以近似的得到圖標的中心,接下來使用java的畫筆,在圖片上繪制純白的矩形框即可,但是這個操作難度系數過高,容易遮蓋頁面其他內容
效果:3星

5.2 像素替換法

pdf簽字app。此方法使用于純色圖標,沒有簽名文字的情況下,承接5.1的內容,我們可以在循環判斷顏色區間時,用setColor方法將符合圖標顏色范圍的像素改成純白色,但是需要不斷的調整參數
效果:3星

5.3 AI獲取圖標位置

這里介紹百度EasyDL平臺,網址:百度EasyDL官網
1.準備10張含有簽名圖標的圖片,保存在一個英文名下
2.打開上面的官網選擇EasyDL經典版,點擊立即使用,選擇視覺下的物體檢測
3.點擊創建模型,填寫名稱等信息點擊下一步
在這里插入圖片描述
4.點擊數據總覽,然后選擇創建數據集在這里插入圖片描述
5.填寫名稱,點擊完成在這里插入圖片描述
6.點擊導入在這里插入圖片描述
7.選擇本地數據集,旁邊的選擇上傳圖片,選擇你保存的文件夾里的所有圖片(建議15-20張即可)
在這里插入圖片描述
8.導入后選擇標注,按住鼠標右鍵拖拽,使藍色框覆蓋簽名圖標,將導入的圖片全部標注在這里插入圖片描述
9.點擊訓練模型,選擇標注好的數據集,點擊開始訓練即可
在這里插入圖片描述
10.大概20分鐘左右訓練成功,在我的模型里申請,稍等一下就會成功
在這里插入圖片描述

11.點擊服務詳情,得到這串地址即可
這個項目已經寫好,需要配合上面的pdf轉圖片使用,鏈接:項目鏈接,需要的私信下密碼
在這里插入圖片描述
12.長話短說!
需要改的地方:EasydlImageClassify、PlantImage.
EasydlImageClassify:
在這里插入圖片描述
下面這倆需要去百度Ai注冊個應用即可獲得
PlantImage:
在這里插入圖片描述
這里的地址換成你在文件夾里生成的pdf圖片的目錄
開始運行即可,運行完成后,配合之前的項目,將圖片轉成pdf 文件即可完美去除數字簽名和圖標簽名

效果:5星

https://www.nshth.com/java/338906.html
>

相关文章:

  • pdf去水印軟件免費版
  • pdf簽字app
  • 如何去掉pdf的簽名
  • 不帶水印的pdf編輯器
  • pdf已簽名后 如何編輯
  • pdf文檔已簽名
  • JAVA如何設置窗口圖標
  • java怎么修改程序圖標
  • pdf去水印軟件免費版,java批量去除pdf簽名,刪除簽名圖標
  • java多線程面試題及答案,JAVA8線程池THREADPOOLEXECUTOR底層原理及其源碼解析
  • java編程,java.lang.Class:是反射的源頭
  • java基礎面試題及答案,HTML CSS 基礎 面試題
  • java編寫軟件工具,Xson:Java對象序列化和反序列化工具
  • nlp預訓練模型,NLP-D62-nlp比賽D31刷題D15
  • kafka如何使用,kafka javax.management.InstanceAlreadyExistsException: kafka.consumer:
  • ssm畢設項目企業部門報銷管理g9d62(java+VUE+Mybatis+Maven+Mysql+sprnig)
  • java小游戲合集,java 煙花_Java 美麗的煙花
  • table列合并,poi操作excel之列合并
  • 找不到指定模塊怎么辦,在烏版圖安裝軟件包時候報錯:E:無法定位軟件包
  • 學云計算好就業嗎,對不起,云計算技術又走錯路了
  • 數電模電基礎知識總結,數電模電實驗課程
  • java的基礎知識,「JavaSE」-面向對象
  • 擴展內存,Java編程內存分析簡要
  • java多線程面試題及答案,【階段一】java之面向對象上
  • java 工作流框架,Activiti工作流使用之SpringBoot整合Activiti
  • 模型的應用形態包括哪些,模型設計準則
  • c語言程序設計培訓班南寧,南寧從零開始學習編程
  • 服務器,Spring Security oAuth2創建認證服務器模塊
  • Java jdk14.0.1安裝簡單步驟
  • 安裝ug12.0當前頁面的腳本發生錯誤,ug提示找不到html文件,[圖文教程] 以下文件無法加載,導致打開操作失敗: 使用當前搜索選項找不到文件,部件已卸載.
  • java執行cmd命令找不到指定文件,java編譯找不到文件_解決cmd運行java程序“找不到文件”提示的方案
  • 線上學畫畫的機構排名,拍樂云推出業內首個「線上美術教學音視頻方案」,打造極致互動體驗
  • day18-java
  • 取兩者中較小值函數,求兩個數中的較大值
  • java多線程面試題及答案,python中的多任務-多線程和多進程
  • 關于Arthas如何遠程監視Java程序
  • Java8 Stream流中的 collect() 方法,遠比你想象中的強大
  • 劉德華《天若有情》,天若有情