Java如何实现添加页码到PDF文档
代码编译环境IntelliJIDEA2019(jdk1.8.0)PDFJar包:FreeSpire.PDFforJava5.1.0引入jar包导入方法1:手动引入。将FreeSpire.PDFforJava下载到本地,解压,找到lib文件夹下的Spire.PDF.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:导入方法2:如果您想通过Maven安装,则可以在pom.xml文件中添加以下代码导入JAR文件。com.e-icebluehttps://repo.e-iceblue
代码编译环境
IntelliJ IDEA 2019(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.0
引入jar包
导入方法1:
手动引入。将Free Spire.PDF for Java下载到本地,解压,找到lib文件夹下的Spire.PDF.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:

导入方法2:如果您想通过 Maven安装,则可以在 pom.xml 文件中添加以下代码导入 JAR 文件。
com.e-iceblue https://repo.e-iceblue.cn/repository/maven-public/ e-iceblue spire.pdf.free 5.1.0
将添加页码到PDF文档
以下步骤展示了如何将“第 X 页(共 Y 页)”这样的页码添加到现有的 PDF 文档中:
创建 PdfDocument 类的对象。
使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
创建 PdfPageNumberField 类的对象。
创建 PdfPageCountField 类的对象。
创建 PdfCompositeField 类的对象。
使用 PdfCompositeField.setStringFormat() 方法为复合字段设置文本对齐方式。
循环遍历 PDF 文档中的每一页,然后使用 PdfCompositeField.draw() 方法在页面的特定位置绘制复合字段。
使用 PdfDocument.saveToFile() 方法保存结果文档。
完整代码
Java
import com.spire.pdf.*;
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.*;
public class addPageNumber {
public static void main(String[] args) {
//创建 PdfDocument 类的对象
PdfDocument pdf = new PdfDocument();
//载入PDF文档
pdf.loadFromFile("九寨沟简介 .pdf");
//创建 PdfTrueTypeFont 类的对象
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("华文中宋", Font.PLAIN, 10));
//创建 PdfPageNumberField 类的对象
PdfPageNumberField pageNumberField = new PdfPageNumberField(font, PdfBrushes.getBlack());
//创建 PdfPageCountField 类的对象
PdfPageCountField pageCountField = new PdfPageCountField(font, PdfBrushes.getBlack());
//创建一个 PdfCompositeField 类的对象,将页码字段和页数字段添加到复合字段
PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.getBlack(), "第{0}页/共{1}页", pageNumberField, pageCountField);
//设置复合字段的文字格式
compositeField.setStringFormat(new PdfStringFormat(PdfTextAlignment.Left, PdfVerticalAlignment.Top));
//循环遍历文档中的页面
for(int i = 0; i < pdf.getPages().getCount();i ++)
{
PdfPageBase page = pdf.getPages().get(i);
float x = (float) page.getSize().getWidth()/2 - 20;
float y = (float)page.getSize().getHeight() - pdf.getPageSettings().getMargins().getBottom();
//将复合字段描绘于每个页面上
compositeField.draw(page.getCanvas(), x, y);
}
//保存结果文档
pdf.saveToFile("添加页码.pdf");
}
}效果图

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















