怎么用Java给PDF文档添加页码

这篇文章主要介绍“怎么用Java给PDF文档添加页码”,在日常操作中,相信很多人在怎么用Java给PDF文档添加页码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Java给PDF文档添加页码”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

成都创新互联公司是一家集网站建设,海东企业网站建设,海东品牌网站建设,网站定制,海东网站建设报价,网络营销,网络优化,海东网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

在日常工作中,为了方便阅读、检索与管理PDF文档,我们常常需要对其进行页码的添加。 那么接下来就分享一个使用免费的Free Spire.PDF for Java在Java程序中快速为PDF文档添加页码的方法。

基本步骤:

  1. 下载Free Spire.PDF for Java包并解压缩

  2. 将lib文件夹下的Spire.Pdf.jar包作为依赖项导入到Java应用程序中,或者通过Maven仓库安装JAR包(配置pom.xml文件的代码见下文)

  3. 在Java应用程序中新建一个Java Class(此处我命名为AddPageNumbers), 然后输入相应的Java代码并运行

配置pom.xml文件:

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

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给PDF文档添加页码”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!

新闻标题:怎么用Java给PDF文档添加页码
文章网址:https://www.cdcxhl.com/article8/iipdop.html

成都网站建设公司_创新互联,为您提供手机网站建设网站排名用户体验定制开发品牌网站建设响应式网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设