本文将介绍如何使用Spire.PDF for Java给PDF文档添加书签和子书签。
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
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 AddWatermark {
public static void main(String[] args) {
//创建PdfDocument实例
PdfDocument pdf = new PdfDocument();
//加载PDF文档
pdf.loadFromFile("Input-zh.pdf");
//获取第一页
PdfPageBase page = pdf.getPages().get(0);
//添加书签
PdfBookmark bookmark = pdf.getBookmarks().add("第一章 绪论");
//设置书签的目标页面和位置
PdfDestination destination = new PdfDestination(page, new Point2D.Float(0, 0));
bookmark.setAction(new PdfGoToAction(destination));
//设置字体颜色
bookmark.setColor(new PdfRGBColor(new Color(139, 69, 19)));
//设置字体样式
bookmark.setDisplayStyle(PdfTextStyle.Bold);
//添加子书签
PdfBookmark childBookmark = bookmark.add("1.1 传热学的研究内容及其在科学技术和工程中的应用");
//设置子书签的目标页面和位置
PdfDestination childDestination = new PdfDestination(page, new Point2D.Float(0, 100));
childBookmark.setAction(new PdfGoToAction(childDestination));
//设置字体颜色
childBookmark.setColor(new PdfRGBColor(new Color(255, 127, 80)));
//设置字体样式
childBookmark.setDisplayStyle(PdfTextStyle.Italic);
//保存结果文档
pdf.saveToFile("AddBookmarks-zh.pdf");
}
}
生成文档: