JAVA 添加、修改和删除PDF书签的示例代码

所属分类: 软件编程 / java 阅读数: 48
收藏 0 赞 0 分享

当阅读篇幅较长的PDF文档时,为方便我们再次阅读时快速定位到上一次的阅读位置,可以插入一个书签进行标记;此外,对于文档中已有的书签,我们也可以根据需要进行修改或者删除等操作。本篇文章将通过Java编程来展示如何添加、修改以及删除PDF书签。

工具使用:

•Free Spire.Pdf for Java 2.4.4 (免费版)
•IntelliJ IDEA

Jar包导入:

方式一:首先,从官网获取Free Spire.PDF for Java之后解压,以下是三种在IDEA中快速打开Project Structure界面的方式;如下图:

然后,按照以下步骤进行操作:① 选择“Modules”—“Dependencies”,添加外置jar包;② 进入"Attach File or Directories"界面选择jar文件路径,然后点击“OK”;③ 勾选jar路径选项,点击”OK”/”Apply”;④ 导入完成。如下图:

方式二:使用Maven配置导包。可以参考导入方法。

测试文档:

JAVA代码示例参考:

1.  添加书签

import com.spire.pdf.*;
import com.spire.pdf.actions.PdfGoToAction;
import com.spire.pdf.bookmarks.PdfBookmark;
import com.spire.pdf.bookmarks.PdfTextStyle;
import com.spire.pdf.general.PdfDestination;
import com.spire.pdf.graphics.PdfRGBColor;
import java.awt.*;
import java.awt.geom.Point2D;
public class bookmark {
  public static void main(String[] args) throws Exception{
      //创建PDF实例
      PdfDocument doc = new PdfDocument();
      //从系统中加载PDF文件
      doc.loadFromFile("data/Sample.pdf");
      PdfPageBase page = doc.getPages().get(2);
       //添加书签
      PdfBookmark bookmark = doc.getBookmarks().add("第三页");
      //获取位置,页码的开头
      PdfDestination bookmarkLocation = new PdfDestination(page, new Point2D.Float(0 , 0));
      bookmark.setAction(new PdfGoToAction(bookmarkLocation));
      //书签样式
      bookmark.setColor(new PdfRGBColor(Color.BLUE));
      bookmark.setDisplayStyle(PdfTextStyle.Bold);
      PdfPageBase page1 = doc.getPages().get(3);
      PdfBookmark bookmark1 = doc.getBookmarks().add("第四页");
      PdfDestination bookmarkLocation1 = new PdfDestination(page1, new Point2D.Float(0 , 0));
      bookmark1.setAction(new PdfGoToAction(bookmarkLocation1));
      bookmark1.setColor(new PdfRGBColor(Color.RED));
      bookmark1.setDisplayStyle(PdfTextStyle.Bold);
       //保存PDF文件
      doc.saveToFile("output/bookmarks.pdf");
      doc.close();
    }
  }

书签添加效果:

2.  修改书签

import com.spire.pdf.PdfDocument;
import com.spire.pdf.bookmarks.*;
import com.spire.pdf.graphics.PdfRGBColor;
import java.awt.*;
public class updateBookmark {
  public static void main(String[] args) {
     //创建PDF实例
    PdfDocument doc = new PdfDocument();
     //从系统中加载PDF文件
    doc.loadFromFile("output/bookmarks.pdf");
    //获取第一个书签
    PdfBookmark bookmark = doc.getBookmarks().get(0);
    //更改书签
    bookmark.setTitle("已更新的书签");
    // 设置书签的颜色
    bookmark.setColor(new PdfRGBColor(Color.black));
    //设置书签文本加粗
    bookmark.setDisplayStyle(PdfTextStyle.Bold);
    //保存文件
    doc.saveToFile("output/updateBookmark.pdf");
    doc.close();
  }
}

书签修改效果:

3.  删除书签

import com.spire.pdf.PdfDocument;
public class deleteBookmark {
  public static void main(String[] args) {
     //创建PDF实例
    PdfDocument doc = new PdfDocument();
     //从系统中加载PDF文件
    doc.loadFromFile("output/bookmarks.pdf");
    //removeAt()方法移除书签
    doc.getBookmarks().removeAt(0);
     //保存文件
    doc.saveToFile("output/deleteBookmark.pdf");
    doc.close();
  }
}

书签删除效果:

以上所述是小编给大家介绍的JAVA 添加、修改和删除PDF书签的示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

spring boot 静态资源处理方法

本篇文章主要介绍了spring boot 静态资源处理方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解spring boot 使用application.properties 进行外部配置

这篇文章主要介绍了详解spring boot 使用application.properties 进行外部配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Java实现分页的前台页面和后台代码

这篇文章主要为大家详细介绍了Java实现分页的前台页面和后台代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

详解spring面向切面aop拦截器

spring中有很多概念和名词,比如过滤器、拦截器、aop等。这篇文章主要介绍了详解spring面向切面aop拦截器,有兴趣的可以了解一下。
收藏 0 赞 0 分享

Java easyui树形表格TreeGrid的实现代码

这篇文章主要为大家详细介绍了Java easyui树形表格TreeGrid的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java的NIO与IO的详解及对比

这篇文章主要介绍了Java的NIO与IO的详解及对比的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Java中网络IO的实现方式(BIO、NIO、AIO)介绍

这篇文章主要介绍了Java中网络IO的实现方式(BIO、NIO、AIO)介绍的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 敏感信息加密处理

本文主要介绍了Java 敏感信息加密处理的相关知识:1)敏感信息加密处理我们要实现什么;2)敏感信息加密处理我做了些什么;3)敏感信息加密实现方法。具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享

详解使用Spring3 实现用户登录以及权限认证

这篇文章主要介绍了详解使用Spring3 实现用户登录以及权限认证,这里整理了详细的代码,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

Java的内存机制详解

本文主要介绍了Java的内存机制的相关知识,具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享
查看更多