1.引入依赖

com.e-iceblue

e-iceblue

http://repo.e-iceblue.cn/repository/maven-public/

e-iceblue

spire.pdf.free

2.6.3

2.代码

import com.spire.pdf.PdfDocument;

import com.spire.pdf.graphics.PdfImage;

import com.spire.pdf.graphics.PdfTrueTypeFont;

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 ImageSignature {

public static void main(String[] args) {

//加载PDF文档

PdfDocument doc = new PdfDocument();

doc.loadFromFile("D:\\keytest\\7.pdf");

//加载pfx证书

PdfCertificate cert = new PdfCertificate("D:\\keytest\\keystore.p12", "123456");

//添加数字签名,设置其位置和大小

PdfSignature signature = new PdfSignature(doc, doc.getPages().get(doc.getPages().getCount() - 1), cert, "MySignature");

Rectangle2D rect = new Rectangle2D.Float();

rect.setFrame(new Point2D.Float((float) doc.getPages().get(0).getActualSize().getWidth() - 250, (float) doc.getPages().get(0).getActualSize().getHeight() - 300), new Dimension(170, 150));

signature.setBounds(rect);

//设置签名为图片形式

signature.setGraphicMode(GraphicMode.Sign_Image_Only);

signature.setSignImageSource(PdfImage.fromFile("D:\\keytest\\qm.png"));

//设置文档权限为禁止更改

//signature.setDocumentPermissions(PdfCertificationFlags.Forbid_Changes);

//signature.setCertificated(true);

//保存文档

doc.saveToFile("D:\\keytest\\8.pdf");

doc.close();

}

}

java 读取pdf签名域_Java给PDF签名相关推荐

  1. java 读取pdf签名域_Java 获取PDF中的数字签名信息

    本文以Java代码演示如何获取PDF文档中的数字签名信息,包括签名人.签名位置.日期.原因.联系方式.签名在文档中的坐标等等. 程序环境包括: Jdk 1.8.0(版本要求>=1.6.0版本即可 ...

  2. java 取pdf 文本域_Java iText填写PDF模版文本域空白问题

    public static void main(String[] args) throws DocumentException, IOException { PdfReader reader = ne ...

  3. java代码条形码链接网址_Java在PDF中添加条形码

    java开发从入门到精通第2版疯狂 80.8元 包邮 (需用券) 去购买 > 条形码,是由宽度不等的多个黑条和空白所组成,用以表达一组信息的图形标识符.通过给文档添加条形码,可以直观,快捷地访问 ...

  4. java读取文件指定内容_Java读取文本指定的某一行内容

    Java读取文本指定的某一行内容,使用的都是IO的方法,下面具体看例子: /** * @author:罗大锤 * @date: 2017年9月6日 下午2:35:43 * @version 1.0 * ...

  5. java读取文件到字符串_Java读取文件到字符串

    java读取文件到字符串 Sometimes while working with files, we need to read the file to String in Java. Today w ...

  6. java读取文件是乱码_java读取txt文件乱码解决方案

    因为txt默认的选项是ANSI,即GBK编码.GBK和GB2312都是中文编码,在这里解释一下两者的区别. 总体说来,GBK包括所有的汉字,包括简体和繁体.而gb2312则只包括简体汉字. GBK: ...

  7. java 读取csv文件乱码_java读取csv文件乱码怎么解决

    csv文件默认编码为ANSI,java读取CSV出现乱码主要是编码不一致问题.(推荐:java视频教程)DataInputStream in = new DataInputStream(new Fil ...

  8. java读取文件并输出_java读取txt文件并输出结果

    这篇文章主要介绍了java读取txt文件并输出结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 描述: 1.java读取指定txt文件并解析 文件 ...

  9. java读取txt文件函数_Java读取txt文件和写入txt文件的简单实例

    写Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂! package edu.thu.keyword.test ...

最新文章

  1. linux内核如何安装vim,如何在Linux 中安装和使用 PacVim?
  2. mysql alter算法_MySQL ALTER语法的运用方法 操作索引和字段
  3. 算法与数据结构(冒泡排序,选择排序和插入排序的总结)
  4. Intellj(IDEA) warning no artifacts configured
  5. 一起谈.NET技术,C#序列化与反序列化(Serializable and Deserialize)
  6. SpringBoot视频教程
  7. MongoDB入门示例及介绍
  8. kafka0.9 java commit_Kafka 0.9 新消费者API
  9. SpringMVC的响应JSON数据和过滤静态资源
  10. word打开老是配置进度_word怎么转pdf?两个值得学习的高效转换法
  11. 面试准备:简历中项目剖析
  12. web3j错误解决:okhttp3.RequestBody.create(Ljava/lang/String;Lokhttp3/MediaType;)Lokhttp3/RequestBody
  13. Java程序员编程学习之路资源合集
  14. Python 自动识别图片文字—OCR实战教程
  15. nacos的feign报错Error creating bean with name ‘configurationPropertiesBeans‘ defined in class path reso
  16. CC00260.CloudKubernetes——|KuberNetes中间件容器化及helm.V07|——|中间件.v07|redis.v5.0.4|custom-reso...
  17. 如何用ChatGPT做新品上市推广方案策划?
  18. 电脑远程设置的方法 电脑远程的用户名和密码怎么设置
  19. 安天每日安全简讯20160712
  20. linux控制pwm输出个数,树莓派精确控制pwm输出,控制步进电机

热门文章

  1. C# 零基础入门知识点汇总
  2. SpringBoot启动时:Process finished with exit code 0解决办法
  3. Deepin Linux系统安装及显示器配置教程(可竖屏)
  4. Ubuntu18.04系统硬盘分区方法
  5. MySQL命令简单应用
  6. python接口自动化搭配Gitlab 和jenkins持续集成
  7. 英语六级作文单词、例句总结
  8. 根据输入的银行卡号显示开户银行类型,并将银行卡号四位分隔
  9. ITILv4 MP认证以及证书展示
  10. winSCP:无权访问。 错误码:3 服务器返回的错误消息:Permission denied解决方案