提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2021-07-20 09:49:11.017|阅读 201 次
概述:本文演示了如何在使用 Spire.PDF for Java 对 PDF 文档进行数字签名时嵌入时间戳。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Spire.PDF for Java 是一款专门对 PDF 文档进行操作的 Java 类库。该类库的主要功能在于帮助开发人员在 Java 应用程序(J2SE和J2EE)中生成 PDF 文档和操作现有 PDF 文档,并且运行环境无需安装 Adobe Acrobat。
本文演示了如何在使用 Spire.PDF for Java 对 PDF 文档进行数字签名时嵌入时间戳。可点击此处下载最新版测试。
import com.spire.pdf.PdfDocument; import com.spire.pdf.graphics.*; import com.spire.pdf.security.GraphicMode; import com.spire.pdf.security.PdfCertificate; import com.spire.pdf.security.PdfCertificationFlags; import com.spire.pdf.security.PdfSignature; import java.awt.*; import java.awt.geom.Point2D; import java.awt.geom.Rectangle2D; public class SignWithTimestamp { public static void main(String[] args) { //Load a pdf document PdfDocument doc = new PdfDocument(); doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Introduction.pdf"); //Load the certificate PdfCertificate cert = new PdfCertificate("C:\\Users\\Administrator\\Desktop\\gary.pfx", "e-iceblue"); //Create a PdfSignature object and specify its position and size PdfSignature signature = new PdfSignature(doc, doc.getPages().get(0), cert, "MySignature"); Rectangle2D rect = new Rectangle2D.Float(); rect.setFrame(new Point2D.Float((float) doc.getPages().get(0).getActualSize().getWidth() - 220, (float) doc.getPages().get(0).getActualSize().getHeight() - 140), new Dimension(200, 100)); signature.setBounds(rect); //Set the graphics mode signature.setGraphicMode(GraphicMode.Sign_Detail); //Set the signature content signature.setNameLabel("Signer:"); signature.setName("Gary"); signature.setContactInfoLabel("ContactInfo:"); signature.setContactInfo("02881705109"); signature.setLocationInfoLabel("Location:"); signature.setLocationInfo("Chengdu"); signature.setReasonLabel("Reason: "); signature.setReason("The certificate of this document"); //Set the signature font signature.setSignDetailsFont(new PdfFont(PdfFontFamily.Helvetica, 10f, PdfFontStyle.Regular)); //Set the document permission signature.setDocumentPermissions(PdfCertificationFlags.Forbid_Changes); signature.setCertificated(true); //Configure a time stamp server String timestampServerUrl = "//timestamp.digicert.com"; signature.configureTimestamp(timestampServerUrl); //Save to file doc.saveToFile("Timestamp.pdf"); doc.close(); } }
输出结果
整合所有格式API处理套包Spire.office for Java正在慧都网火热销售中!立马1分钟了解全部咨询!
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢