时间:2021-05-20
骑缝章是用于往来业务合同,以确保合同真实、有效的印章加盖方法,是一种防范风险的重要方式。在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 com.spire.pdf.*;import com.spire.pdf.graphics.PdfGraphicsUnit;import com.spire.pdf.graphics.PdfImage;import com.spire.pdf.graphics.PdfUnitConvertor;import javax.imageio.ImageIO;import java.awt.*;import java.awt.geom.Point2D;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;public class AcrossPageSeal { public static void main(String[] args) throws IOException { //加载测试文档 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("test.pdf"); //获取分割后的印章图片 BufferedImage[] images = GetImage(pdf.getPages().getCount()); float x = 0; float y = 0; //实例化PdfUnitConvertor类 PdfUnitConvertor convert = new PdfUnitConvertor(); PdfPageBase pageBase; //将图片绘制到PDF页面上的指定位置 for (int i = 0; i < pdf.getPages().getCount(); i++) { BufferedImage image= images[ i ]; pageBase = pdf.getPages().get(i); x = (float)pageBase.getSize().getWidth() - convert.convertUnits(image.getWidth(), PdfGraphicsUnit.Point, PdfGraphicsUnit.Pixel) + 40; y = (float) pageBase.getSize().getHeight()/ 2; pageBase.getCanvas().drawImage(PdfImage.fromImage(image), new Point2D.Float(x, y)); } //保存PDF文档 pdf.saveToFile("Result.pdf"); } //定义GetImage方法,根据PDF页数分割印章图片 static BufferedImage[] GetImage(int num) throws IOException { String originalImg = "seal.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中添加骑缝章内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
这篇文章主要介绍了java根据富文本生成pdf文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下pu
迅捷PDF编辑器如何在PDF文件中添加标注?很多朋友在工作中是不是也常常用到迅捷pdf编辑器呢?那你们知道迅捷pdf编辑器中PDF编辑功能怎么在pdf文件中添加
简介PDF超链接用一个简单的链接包含了大量的信息,满足了人们在不占用太多空间的情况下渲染外部信息的需求。下面将介绍通过Java在PDF中添加、更新和移除超链接。
概述在以下示例中,将介绍在PDF文档页面设置页面切换按钮的方法。示例中将页面切换按钮的添加分为了两种情况,一种是设置按钮跳转到首页、下页、上页或者最后一页,另一
前言本文将介绍通过Java编程在PDF文档中添加表格的方法。添加表格时,可设置表格边框、单元格对齐方式、单元格背景色、单元格合并、插入图片、设置行高、列宽、字体