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

2021-09-02 12:28:36 字數 1252 閱讀 7255

itext可以生成pdf並對其進行各種操作,其中就包括簽章,並且用其他工具籤的章,itext也可以識別出來。

目前系統中有乙個需求,系統要求上傳的pdf必須進行簽章,上傳後需要對pdf進行驗籤和拿到pdf章的證書的所有者,

拿到章證書的所有者**如下

pdfreader reader = new pdfreader(pdfpath);

acrofields acrofields = reader.getacrofields();

if (acrofields == null)

//簽章名稱

listsignaturenames = acrofields.getsignaturenames();

if (signaturenames == null || signaturenames.size() == 0)

reader.close();

for (string str : signaturenames)

pdfname sub = sigdict.getasname(pdfname.subfilter);

if (pdfname.adbe_x509_rsa_sha1.equals(sub))

if (certstr == null)

//簽章對應的證書

x509certparser certparser = new x509certparser();

certparser.engineinit(new bytearrayinputstream(certstr.getbytes()));

collectioncerts = certparser.enginereadall();

if (certs == null || certs.size() == 0)

x509certificate certificate = (x509certificate) certs.iterator().next();

if (certificate == null)

x500principal principal = certificate.getsubjectx500principal();

if (principal == null)

//簽章對應的證書的所有者

ldapname ldapdn = new ldapname(principal.getname());

for (rdn rdn : ldapdn.getrdns()) }}

}

使用iText操作pdf檔案

itext建立pdf檔案是十分簡單的,為了演示其極其簡單性,我們做乙個helloworld吧,讓大家體驗一下。在這個pdf檔案中,我們只顯示一句話 hello world 實現方式如下 建立乙個文件物件 document doc new document try catch filenotfound...

使用iText操作pdf檔案

好了,回到文章主題,查了下itext後,我也去稍微看了下相關的api,做了一些簡單的demo,雖然網上相關介紹很多,但是自己寫一遍程式再用自己的語言記錄下來,理解會更為深刻一點。一.hello world itext建立pdf檔案是十分簡單的,為了演示其極其簡單性,我們做乙個helloworld吧,...

使用itext包生成pdf檔案

最近在寫乙個定時任務,定時生成乙個pdf檔案並實現傳送的功能,在此給大家順帶講一下生成pdf檔案的庫吧 生成pdf檔案所用庫itext,具體操作如下 com.itextpdf itextpdf 5.5.10 如果輸出的是中文的話,那麼還需要引入下面這個包 com.itextpdf itext asi...