資源簡介
使用iTextSharp驗證PDF文件中簽名的數量、及簽名的有效性、驗證簽名證書是否與當前單位相同

代碼片段和文件信息
using?iTextSharp.text.pdf;
using?iTextSharp.text.pdf.parser;
using?iTextSharp.text.pdf.security;
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.IO;
using?System.Linq;
using?System.Security.Cryptography.X509Certificates;
using?System.Text;
using?System.Windows.Forms;
namespace?CheckPdfDigitalSeal
{
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????string?pdfFile?=?String.Empty;
????????private?void?Form1_Load(object?sender?EventArgs?e)
????????{
????????????//pdfFile?=?“D:\\testpdf\\PDF測試二.pdf“;?//1個章
????????????//pdfFile?=?“D:\\testpdf\\中華人民共和國電子簽名法.pdf“;?//2個章
????????????//pdfFile?=?“D:\\testpdf\\Linux命令.pdf“;?//0個章
????????????//pdfFile?=?“D:\\testpdf\\1.pdf“;//8MB??有章
????????????//pdfFile?=?“D:\\testpdf\\Mavericks10.9.pdf“;//171MB??無章
????????????//pdfFile?=?“D:\\testpdf\\電子章有問題.pdf“;//電子章有問題
????????????this.txtPdf.Text?=?System.AppDomain.CurrentDomain.baseDirectory.TrimEnd(‘\\‘)?+?“\\已蓋章.pdf“;
????????????this.txtSeal.Text?=?“簽章公司“;
????????}
????????private?void?LoadPdfPath()
????????{
????????????pdfFile?=?txtPdf.Text.Trim();
????????????if?(String.IsNullOrWhiteSpace(pdfFile)?||?!File.Exists(pdfFile))
????????????{
????????????????MessageBox.Show(“請選擇PDF“);
????????????????return;
????????????}
????????}
????????private?void?button1_Click(object?sender?EventArgs?e)
????????{
????????????try
????????????{
????????????????LoadPdfPath();
????????????????PDFVerify?pdf?=?new?PDFVerify(pdfFile);
????????????????List?zsList1?=?pdf.SignNameArrayList;
????????????????int?gs1?=?pdf.SignNum;
????????????}
????????????catch?(Exception?ex)
????????????{
????????????}
????????????finally
????????????{
????????????????GC.Collect();
????????????}
????????}
????????private?void?button2_Click(object?sender?EventArgs?e)
????????{
????????????LoadPdfPath();
????????????FileStream?fs?=?new?FileStream(pdfFile?FileMode.Create);
????????????try
????????????{
????????????????PDFOperation?pdf?=?new?PDFOperation();
????????????????pdf.Open(fs);
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????MessageBox.Show(ex.Message);
????????????}
????????????finally
????????????{
????????????????fs.Dispose();
????????????????fs.Close();
????????????}
????????}
????????private?void?button3_Click(object?sender?EventArgs?e)
????????{
????????????try
????????????{
????????????????LoadPdfPath();
????????????????string?outPdfFile?=?“D:\\testpdf\\PDF測試二_“?+?Guid.NewGuid()?+?“.pdf“;?//1個章
????????????????PDFSetWaterMark?pdfSWM?=?new?PDFSetWaterMark();
????????????????pdfSWM.setWatermark(pdfFile?outPdfFile?“XX中心“);
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????MessageBox.Show(ex.Message);
????????????}
????????}
????????private?void?butto
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????19968??2018-11-14?10:27??CheckPdfDigitalSeal\bin\Debug\CheckPdfDigitalSeal.exe
?????文件??????48640??2018-11-14?10:27??CheckPdfDigitalSeal\bin\Debug\CheckPdfDigitalSeal.pdb
?????文件??????24216??2018-04-28?01:05??CheckPdfDigitalSeal\bin\Debug\CheckPdfDigitalSeal.vshost.exe
?????文件????????490??2010-03-17?22:39??CheckPdfDigitalSeal\bin\Debug\CheckPdfDigitalSeal.vshost.exe.manifest
?????文件????4055040??2016-10-07?20:33??CheckPdfDigitalSeal\bin\Debug\itextsharp.dll
?????文件???????4244??2018-11-12?14:58??CheckPdfDigitalSeal\CheckPdfDigitalSeal.csproj
?????文件???????5046??2018-11-14?13:25??CheckPdfDigitalSeal\Form1.cs
?????文件???????6127??2018-11-12?14:57??CheckPdfDigitalSeal\Form1.Designer.cs
?????文件???????5817??2018-11-12?14:57??CheckPdfDigitalSeal\Form1.resx
?????文件??????????0??2018-11-14?10:27??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.csproj.CopyComplete
?????文件?????????42??2018-11-12?15:02??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.csproj.CoreCompileInputs.cache
?????文件???????2627??2018-11-12?15:18??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.csproj.FileListAbsolute.txt
?????文件???????1012??2018-11-12?15:02??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.csproj.GenerateResource.cache
?????文件???????6926??2018-11-12?15:18??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.csprojAssemblyReference.cache
?????文件??????19968??2018-11-14?10:27??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.exe
?????文件????????180??2018-11-12?15:02??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.Form1.resources
?????文件??????48640??2018-11-14?10:27??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.pdb
?????文件????????180??2018-11-12?15:02??CheckPdfDigitalSeal\obj\Debug\CheckPdfDigitalSeal.Properties.Resources.resources
?????文件???????1431??2018-11-12?15:08??CheckPdfDigitalSeal\obj\Debug\DesignTimeResolveAssemblyReferences.cache
?????文件???????7283??2018-11-12?14:51??CheckPdfDigitalSeal\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????文件???????2707??2018-04-29?19:37??CheckPdfDigitalSeal\PDFCert.cs
?????文件???????5973??2018-04-29?19:36??CheckPdfDigitalSeal\PDFCert2.cs
?????文件???????7387??2018-04-27?23:38??CheckPdfDigitalSeal\PDFOperation.cs
?????文件???????9973??2018-04-28?00:42??CheckPdfDigitalSeal\PDFSetWaterMark.cs
?????文件???????4369??2018-04-28?01:00??CheckPdfDigitalSeal\PDFStamp.cs
?????文件???????3597??2018-04-25?21:17??CheckPdfDigitalSeal\PDFVerify.cs
?????文件????????500??2018-04-25?20:34??CheckPdfDigitalSeal\Program.cs
?????文件???????1380??2018-04-25?20:34??CheckPdfDigitalSeal\Properties\AssemblyInfo.cs
?????文件???????2890??2018-04-25?20:34??CheckPdfDigitalSeal\Properties\Resources.Designer.cs
?????文件???????5612??2018-04-25?20:34??CheckPdfDigitalSeal\Properties\Resources.resx
............此處省略15個文件信息
評論
共有 條評論