Java 在PDF中添加骑缝章
骑缝章是用于往来业务合同,以确保合同真实、有效的印章加盖方法,是一种防范风险的重要方式。在Java程序中,可以通过使用工具来辅助加盖这种骑缝章。
工具:Free Spire.PDF for Java (免费版)
工具获取及jar文件导入:
方式1:通过官网下载jar包,并解压,手动导入lib文件夹下的Spire.Pdf.jar文件。
方式2:通过创建Maven程序,在pom.xml中配置maven仓库路径并指定Free Spire.PDF for Java 的依赖,配置完成后,在IDEA中,点击“Import Changes”导入JAR包:
<repositories><repository><id>com.e-iceblue</id><url>http://repo.e-iceblue.cn/repository/maven-public/</url></repository>
</repositories><dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf.free</artifactId><version>2.6.3</version></dependency>
</dependencies>
(Ecllipse的导入方法,参考这篇文章)
jar导入结果如下图所示:
Java 示例
import java.io.IOException;
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.geom.Point2D;
import java.awt.image.BufferedImage;
import java.io.*;public class AddSeal {public static void main(String[] args) throws IOException {//加载测试文档PdfDocument doc = new PdfDocument();doc.loadFromFile("C:\\Users\\Test1\\Desktop\\Demo.pdf");PdfUnitConvertor convert = new PdfUnitConvertor();PdfPageBase pageBase = null;//获取分割后的印章图片BufferedImage[] images = GetImage(doc.getPages().getCount());float x = 0;float y = 0;//将图片绘制到PDF页面上的指定位置for (int i = 0; i < doc.getPages().getCount(); i++){BufferedImage image= images[ i ];pageBase = doc.getPages().get(i);x = (float)(pageBase.getSize().getWidth()) - convert.convertUnits(image.getWidth(), PdfGraphicsUnit.Pixel, PdfGraphicsUnit.Point);y = (float) pageBase.getSize().getHeight()/ 2;pageBase.getCanvas().drawImage(PdfImage.fromImage(image), new Point2D.Float(x, y));}//保存结果文档doc.saveToFile("output/AddSeal.pdf");}//定义GetImage方法,根据PDF页数分割印章图片static BufferedImage[] GetImage(int num) throws IOException {String originalImg = "C:\\Users\\Test1\\Desktop\\Image.png";BufferedImage image = ImageIO.read(new File(originalImg));int rows = 1;int cols = num;int chunks = rows * cols;int chunkWidth = image.getWidth() / cols;int chunkHeight = image.getHeight() / rows;int count = 0;BufferedImage[] imgs = new BufferedImage[ chunks ];for (int x = 0; x < rows; x++) {for (int y = 0; y < cols; y++) {imgs[ count ] = new BufferedImage(chunkWidth, chunkHeight, image.getType());Graphics2D gr = imgs[ count++ ].createGraphics();gr.drawImage(image, 0, 0, chunkWidth, chunkHeight,chunkWidth * y, chunkHeight * x,chunkWidth * y + chunkWidth, chunkHeight * x + chunkHeight, Color.WHITE,null);gr.dispose();}}return imgs;}
}
骑缝章添加效果:
(完)
Java 在PDF中添加骑缝章相关推荐
- Java 中pdf部分内容加边线_Java 在PDF中添加骑缝章示例解析
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具:Free Spire.PDF for Java ...
- Java实现pdf加盖骑缝章_Java 在PDF中添加骑缝章示例解析
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具:Free Spire.PDF for Java ...
- 骑缝章 Java_Java 在PDF中添加骑缝章示例解析
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具:Free Spire.PDF for Java ...
- 骑缝章 Java_Java实现在PDF中添加骑缝章
码农公社 210.net.cn 210是何含义?10月24日是程序员节,1024 =210.210既 210 之意. 骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的 ...
- 骑缝章 Java_Java 在PDF中添加骑缝章
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具 Free Spire.PDF for Java ...
- java maven 读写pdf_Java 在PDF中加盖骑缝章
骑缝章是用于往来业务合同,以确保合同真实.有效的印章加盖方法,是一种防范风险的重要方式.在Java程序中,可以通过使用工具来辅助加盖这种骑缝章. 工具:Free Spire.PDF for Java ...
- Java给PDF文件生成骑缝章
什么是缝骑章? 骑缝章(Paging seal.)是海关常用词汇.为了保证海关监管货物留存单据的完整齐全以及核对有关单证,在单据交接处所加盖的印章. 在两张纸交接处的印章.这种印章多盖在条据.证书或其 ...
- Java 在PDF中添加工具提示|ToolTip
本文,将介绍如何通过Java后端程序代码在PDF中创建工具提示.添加工具提示后,当鼠标悬停在页面上的元素时,将显示工具提示内容. 导入jar包 本次程序中使用的是Free Spire.PDF for ...
- 【PDF添加印章】Java在PDF中添加指定尺寸大小的图片印章
文章目录 需求 问题 解决 需求 需要在导出PDF时,添加指定大小为 4cm × 4cm 大小的图片印章 问题 客户提供的图片由 PhotoShop 导出,尺寸大小为 4cm × 4cm ,按说使用 ...
最新文章
- Java项目:农资采购销售系统(java+SSM+Easyui+maven+Mysql)
- android数据库降级_android——数据库版本升/降级问题
- linux用户态驱动--VIFIO、IOMMU、UIO(二)
- spring boot配置文件:application.yml (yml与properties文件优缺对比)
- 理解 RIPv1使用广播更新路由与RIPv2使用组播更新路由的区别
- 02.CSS基础笔记及导入
- 网络 计算机不显示不出来,网页图片显示不出来怎么办 网络故障解决【详解】...
- python理论知识选择题_Python基础自测题答案和基础知识梳理
- linux中ftp的工作原理,Linux系统学习 十二、VSFTP服务—简介与原理
- java 中缀式转后缀式
- whitelabel error page怎么解决_pyppeteer使用遇到的bug及解决方法
- mysql migration tool 64bit_Migration Tool支持MySQL业务SQL迁移
- 电脑课装b专用代码_JavaScript无形装X,最为致命
- SQLite:在Julia中判断一个表是否存在数据库中?
- xp母盘制作流程+QQDLL+系统文件DLL修改(转)
- UE4蓝图基础——蓝图介绍及实现数据计算并输出
- word文档中怎么输入公式符号
- 搭建Jumpserver服务器管理公司服务器
- 有时候,感慨的人生~
- 钉钉e应用点击按钮触发两次点击事件的解决办法
热门文章
- 自媒体人必不可少的多平台同步、一文多发小助手
- dbms_aw.eval_number
- (NeurIPS 2019) Learning Object Bounding Boxes for 3D Instance Segmentation on Point Clouds
- 敏捷开发一千零一问系列之二十六 如何进行优先级排序
- C语言实现24点小游戏
- 济南大学计算机系录取分数线,2019年济南大学录取分数线是多少
- KONG (API网关) 用CORS处理跨域,针对:非简单请求
- 手动标记用例状态_别再用「六个点」当省略号了,这些标点都有更规范的输入方式...
- 【归档】设U是V的子空间,求U + U
- Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息