java pdf添加页码_Java 给PDF文档添加页码
在日常工作中,为了方便阅读、检索与管理PDF文档,我们常常需要对其进行页码的添加。 那么接下来就分享一个使用免费的Free Spire.PDF for Java在Java程序中快速为PDF文档添加页码的方法。
首先放一张效果图供大家参考:
基本步骤:
将lib文件夹下的Spire.Pdf.jar包作为依赖项导入到Java应用程序中,或者通过Maven仓库安装JAR包(配置pom.xml文件的代码见下文)
在Java应用程序中新建一个Java Class(此处我命名为AddPageNumbers), 然后输入相应的Java代码并运行
配置pom.xml文件:
com.e-iceblue
http://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.pdf.free
2.6.3
Java代码
import com.spire.pdf.PdfDocument;
import com.spire.pdf.automaticfields.PdfCompositeField;
import com.spire.pdf.automaticfields.PdfPageCountField;
import com.spire.pdf.automaticfields.PdfPageNumberField;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.Dimension2D;
import java.awt.geom.Rectangle2D;
public class AddPageNumbers {
public static void main(String[] args) {
//加载PDF文档
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("sample.pdf");
//创建字体
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("宋体", Font.PLAIN, 10),true);
//获取页面尺寸
Dimension2D pageSize = pdf.getPages().get(0).getSize();
//初始化y坐标
float y = (float) pageSize.getHeight() - 40;
//遍历文档中的页
for (int i = 0; i < pdf.getPages().getCount(); i++) {
//初始化页码域
PdfPageNumberField number = new PdfPageNumberField();
//初始化总页数域
PdfPageCountField count = new PdfPageCountField();
//创建复合域
PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.getBlack(), "第{0}页 共{1}页", number, count);
//设置复合域内文字对齐方式
compositeField.setStringFormat(new PdfStringFormat(PdfTextAlignment.Right, PdfVerticalAlignment.Top));
//测量文字大小
Dimension2D textSize = font.measureString(compositeField.getText());
//设置复合域的在PDF页面上的位置及大小
compositeField.setBounds(new Rectangle2D.Float(((float) pageSize.getWidth() - (float) textSize.getWidth())/2, y, (float) textSize.getWidth(), (float) textSize.getHeight()));
//将复合域添加到PDF页面
compositeField.draw(pdf.getPages().get(i).getCanvas());
}
//保存为另外一个文档
pdf.saveToFile("AddPageNumbers.pdf");
}
标签:Java,spire,new,import,PDF,pdf,页码
来源: https://www.cnblogs.com/jazz-z/p/12985679.html
java pdf添加页码_Java 给PDF文档添加页码相关推荐
- java word 颜色设置_Java 给Word文档添加背景颜色
前言 当我们制作好Word文档后,想要让枯燥乏味的文本显得有活力,或是想高亮显示文档中指定的段落或文字,此时我们可以通过为整个文档或某特定文字/段落添加背景色的形式来实现.本文将使用Free Spir ...
- java后台代码添加超链接_Java 实现Excel文档添加超链接的代码
超链接即内容链接,通过给特定对象设置超链接,可实现载体与特定网页.文件.邮件.网络等的链接,点击链接载体可打开链接目标,在文档处理中是一种比较常用的功能.本文将介绍通过Java程序给Excel文档添加 ...
- java 加背景颜色_Java 给Word文档添加背景颜色
前言 当我们制作好Word文档后,想要让枯燥乏味的文本显得有活力,或是想高亮显示文档中指定的段落或文字,此时我们可以通过为整个文档或某特定文字/段落添加背景色的形式来实现.本文将使用Free Spir ...
- java doc转图片_Java 将word文档转换为PNG、XPS、RTF等格式
在日常办公中,Word是一种很好的文档排版工具.在Word创建好文档后, 我们常常需要将其保存为PDF.图片或其他格式.本文就将通过使用Java程序来演示如何将Word文档转换为PNG.XPS.RTF ...
- java合并excel文件_Java 合并Excel文档
在日常使用Excel软件办公时,通常会产生很多文档.当我们需对其中的数据进行整理和统计时,对文档进行合并处理将能够大大提高操作效率.一般文档合并可分为两种情况:一是将同一个Excel文档内多张工作表的 ...
- java word添加图片_Java 替换word文档文字并指定位置插入图片
先说下 需要的依赖包 org.apache.poi poi-excelant 3.12 org.apache.poi poi-scratchpad 3.12 org.apache.poi poi-oo ...
- java生成world文件_Java导出World文档(入门)
第一步就是将World文档里面需要从数据库填充的部分用占位符替换 第二步:就是将此文档保存为Xml格式 第三步:将其放在resource目录下,并选中此文件,右键点击properties属性,将其编码 ...
- java 读取ppt文件_Java 读取PPT文档属性
import com.spire.presentation.*; public class GetProperty { public static void main(String[]args) th ...
- word巧妙设置页码(做标书文档设置页码必备方法)
我们在做投标书或者文档时需要插入页码,因为投标书有一定的格式,一般在标书的封面及目录都不插入页码,从文档的正文开始插入页码,方法如下: 如果想从文档的第三页开始插入页码,则将光标置于文档第二页的最后 ...
- java 读取txt字符串_java读取txt文档需要匹配文档中的字符串
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexMatches { public s ...
最新文章
- 虚拟网卡技术-VETH、MACVLAN、IPVLAN
- 《Ext JS 高级程序设计》的目录与样张
- poj 1283(递推ordp)
- 通过IDEA查看某个类的继承关系
- (3)websocket实现单聊和群聊
- kakfa中的ISR解释
- matlab impyramid,图像 – Matlab impyramid问题
- java基础-关键字final
- php有哪些_php工作原理是什么?php常用功能有哪些?
- linux netlink 内核配置,如何在linux内核模块中加入netlink通信接口
- java 路径通配符_java实现路径通配符*,**,?
- 去哪儿CEO庄辰超:傍百度战携程与巨头共舞
- 计算机组成原理/计算机硬件基础第五章:存储器
- python中char是什么_python有char类型吗
- 汪子熙趣味接龙游戏实现的参考资源
- USACO2018JAN Gold
- 【项目实战二】基于模板匹配和形态学操作的信用卡卡号识别(OpenCV+Python)
- CentOS7环境安装oracleRAC集群遇到的问题总结二(执行root.sh报错ORA-15018和ORA-15020)
- 行内元素和块元素的区别
- 购物车案例ajax,Ajax改购物车示例