java實現pdf定位簽章

2021-08-29 16:22:42 字數 1871 閱讀 6982

很多時候,在專案中需要打單子,生成pdf格式,還需要蓋章。

這個時候,就需要對pdf檔案進行再次處理。

處理的方式就是:

1、獲取要處理的位置

2、將要蓋章的新增上去

**如下:

public void printsign(outputstream outputstream)

if (!objectutil.isempty(arraylists.get(0)))

int pagenum = pdfreader.getnumberofpages();

final list> arraylists = new arraylist>(keywords.size());

for (int k=0; kpositions = new arraylist();

arraylists.add(positions);

} pdfreadercontentparser pdfreadercontentparser = new pdfreadercontentparser(pdfreader);

try

if(yy != boundingrectange.y)

if (pdfsb.length()>0)

if (pdfsb.length()>0 && pdfsb.tostring

().contains(key_word)) }}

}}@override

public void renderimage(imagerenderinfo arg0)

@override

public void endtextblock()

@override

public void begintextblock()

});}

} catch (exception e)

return arraylists;

} public static listparselist(string source, string regex)

liststrlist = new arraylist();

if (regex== null || "".equals(regex)) else

}} return strlist;

} private static image getimgbyinputstream(inputstream is)

bytearrayoutputstream output = new bytearrayoutputstream();

image img = null;

try catch (badelementexception e)

} catch (ioexception e)

return img;

} public static void readinputstream(inputstream inputstream, outputstream outputstream) throws ioexception

inputstream.close();

}

2、然後呼叫printsign方法。

2.1 printsign方法入參是pdf的二進位製流物件。

2.2 還有就是關鍵字寫上自己所需要的關鍵字就行了。方法內的**都是現成的,不需要改動,若有特殊需求可以自己微調。

注意:pdf中的關鍵字的字型必須是中文字型,例如:宋體,黑體,楷體等等。如果pdf生成的時候關鍵字是用英文本型例如:arial,dialog等等這些。

效果圖如下:

webview載入pdf簽章無法顯示問題

最近在webview中載入pdf鏈結的時候簽章載入不出來,於是就網上搜了很多相關的文章,最終解決了這個問題,下面為了防止各位同學因為碰到類似的問題踩坑,做下歸納。uiwebview 載入pdf簽章是始終無法顯示的 wkwebview 在ios12以後是可以載入簽章的。因為公司專案比較老,我這邊統一用...

POI 簽章 簽字 實現

通過文件關鍵字搜尋實現 蓋章 簽字 因客戶要求 蓋章簽字在同一位置,所以蓋章 簽字 必須是透明的。1 通過文件中 的關鍵字 搜尋蓋章 public static void addstampimagetable string sourcefile,string targetfile,string im...

itext解析pdf中簽章檔案的證書

itext可以生成pdf並對其進行各種操作,其中就包括簽章,並且用其他工具籤的章,itext也可以識別出來。目前系統中有乙個需求,系統要求上傳的pdf必須進行簽章,上傳後需要對pdf進行驗籤和拿到pdf章的證書的所有者,拿到章證書的所有者 如下 pdfreader reader new pdfrea...