首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iText 7.0.5:如何将PDF和现有书签合并在每个文档的新书签下缩进?

iText 7.0.5是一款功能强大的Java库,用于处理PDF文件。它提供了丰富的功能,包括创建、编辑、合并、拆分和转换PDF文件等。

要将PDF和现有书签合并在每个文档的新书签下缩进,可以按照以下步骤进行操作:

  1. 首先,使用iText库加载现有的PDF文件,并获取其书签树。PdfDocument pdfDoc = new PdfDocument(new PdfReader("existing.pdf")); PdfOutline rootOutline = pdfDoc.getOutlines(false);
  2. 创建一个新的PDF文档,并获取其书签树。PdfDocument newPdfDoc = new PdfDocument(new PdfWriter("merged.pdf")); PdfOutline newRootOutline = newPdfDoc.getOutlines(false);
  3. 遍历现有PDF的书签树,并将每个书签添加到新的PDF文档的书签树中。在添加书签时,可以使用缩进来表示层级关系。for (PdfOutline outline : rootOutline.getAllChildren()) { PdfOutline newOutline = newRootOutline.addOutline(outline.getTitle()); newOutline.addDestination(outline.getDestination()); newOutline.setOpen(false); // 设置书签默认关闭 // 设置缩进 int level = outline.getLevel(); newOutline.setIndentationLeft(level * 10); }
  4. 将现有PDF的页面内容复制到新的PDF文档中。for (int i = 1; i <= pdfDoc.getNumberOfPages(); i++) { PdfPage page = pdfDoc.getPage(i); newPdfDoc.addPage(page.copyTo(newPdfDoc)); } 5. 关闭文档并保存新的PDF文件。 ```java pdfDoc.close(); newPdfDoc.close();

通过以上步骤,你可以使用iText 7.0.5将PDF和现有书签合并在每个文档的新书签下缩进。这样做可以方便用户浏览和导航PDF文档,并提升用户体验。

推荐的腾讯云相关产品:腾讯云对象存储(COS),它提供了高可靠、低成本的对象存储服务,适用于存储和管理各种类型的文件和数据。你可以将生成的新PDF文件上传到腾讯云对象存储,并通过腾讯云的CDN服务进行加速分发,以提高文件的访问速度和可靠性。

腾讯云对象存储产品介绍链接地址:https://cloud.tencent.com/product/cos

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CSharp每日代码示例:使用iTextSharp创建PDF文件

本文演示如何使用iTextSharp PDF库将文本文件转换为PDF文件。 iTextSharp是一个从JAVA项目iText衍生.Net版本开源项目,采用GPL许可证发布。...这个项目在创建PDF文件方面功能相当强大,弱点是缺少对于现有PDF文件进行修改分析功能。...十、章节(Chapter)区域(Section) 章节使用就比较少了,并且不太好控制,这就不作说明 十一、书签 简单创建书签,使用如下代码: 隐藏行号 复制代码 ? 这是一段程序代码。...Document类允许创建一个新PDF文件。 PdfWriter类提供了从文档类对象编写PDF文档即时访问。...PDF使用iTextSharp工具转换为单个PDF代码 The Code 1.

2.5K10

SciTE中文配置信息

view.indentation.whitespace=1 #设置空白符前景色背景色 whitespace.fore whitespace.back #每个空白缩进单元显示一条垂直线,修改后重启Scite...缩进字符数 indent.size=4 #缩进使用tab键 use.tabs=1 #缩进,就是自动保持前一行缩进 #indent.auto=1 #智能缩进上面的区别就是有反缩进 indent.automatic...edge.colour=#F9F9F9 #设置错误行前景色背景色 error.marker.fore=#0000A0 error.marker.back=#DADAFF #设置书签前景色,背景色透明度...=0 #编译错误定位到源代码 error.select.line=1 #外部扩展,打印导出文档时候有用++++++++++++++++++++++++++++ #export.keep.ext=1...#输出PDF文档放大倍数 export.pdf.magnification=0 #PDF默认字体Font: Courier, Helvetica or Times (Courier line-wraps

1.1K40

LaTex安装(texlive+TeXmaker)

DVI 格式文件是目前科研出版领域广泛应用于书籍、文献、资料、论文、信件等电子文件格式。...\end{document} %文档结尾,必须开头一一对应,否则编译会报错 确实是很漂亮 \documentclass{article} \title{LaTex Title} \author{XXX...,编辑器字体大小不可使用鼠标滑轮缩放大小 这个书签功能挺有趣,但是只能三个,有点不爽.对于每个文件,可以使用三个书签来加快导航速度:只需单击行号即可添加或删除书签。...当您已经定义了三个书签时,您必须删除其中一个才能添加新书签。要跳转到编辑器中书签对应行,只需单击状态栏中按钮。...写东西以后编译 一般是F5 鼠标在pdf上面单击会出现放大镜 可以方便跳转源,以及可以反色 反色 一个较为完善地自动补全 当然了,VSCode可能才是心水之选,但是太难搞了。

1.2K20

Web开发实战总结(二)

其次,jacob是对EXCEL中每个单元格操作,像上面的PDF中有图片读取很不方便,就算能打出图片也可能会很模糊,而且复杂EXCEL更是无能为力。...2.利用iText将HTML 转为 PDF 这个思路就是我此篇要重点要讲,将html转成PDF,首先html有图片,还有各种数据,那么怎么将图片各种数据填充到html里面呢?...利用iText将HTML 转为 PDF 1.准备好生成pdf所需jar包 CORE 包:主要是itext相关一些核心itext.jar XML 包:xmlworker是一个基于iTextxml生成...对于一个标签中含有中文、数字或英文时候,很可能会出现问题。这是因为xmlworker在渲染PDF时候是以html标签为单位。我发现有些字体下部分中文生成pdf不会显示。...; // 5.关闭文档 document.close(); 本文中利用itext生成PDF代码如下: Document document = new Document

1.7K10

Python 处理 PDF 神器 -- PyMuPDF

功能 对于所有支持文档类型可以: 解密文件 访问元信息、链接和书签 以栅格格式(PNG其他格式)或矢量格式SVG呈现页面 搜索文本 提取文本图像 转换为其他格式:PDF, (X)HTML, XML..."xml":不包含图像,但包含每个文本字符完整位置字体信息。使用XML模块进行解释。 e....因此,您可以轻松地使用创建新PDF: - 第一页或最后10页 仅奇数页或偶数页(用于双面打印) 包含或不包含给定文本页 颠倒页面顺序 保存文档将包含仍然有效链接、注释和书签(i.a.w.指向所选页面或某些外部资源...连接拆分PDF文档 方法Document.insert_pdf()在不同pdf文档之间复制页面。...End 崔庆才新书《Python3网络爬虫开发实战(第二版)》已经正式上市了!

3K31

开源免费且稳定实用.NET PDF打印组件itextSharp(.NET组件介绍之八)

一.itextSharp组件概述:          1.iTextPDF库,它允许你创建,调整,检查维护可移植文档格式文件(PDF):         (1).基于从XML文件或数据库中数据生成文件报告...(2).创建地图和书籍,利用众多互动在PDF可用功能。         (3).添加书签,页码,水印等功能,以现有PDF文件。        ...(4).从现有PDF文件拆分或连接页面;填写交互式表单。         (5).即成动态生成或操纵PDF文档到Web浏览器。       ...iText所使用Java,.NET,AndroidGAE开发人员加强与PDF功能应用程序。iTextSharp是.NET端口。    ...对于打印文档”,具体看一下宽泛概念,文档包含元素节点等等。在组织打印时候,我们需要创建文档,写入元素节点等信息,最后组合成为我们需要打印内容。

7.2K50

你需要开源项目都在这里!

Excel easyexcel :快速、简单避免OOMjava处理Excel工具。 PDF pdfbox :用于处理PDF文档开放源码Java工具。...该项目允许创建新PDF文档、对现有文档进行操作以及从文档中提取内容。PDFBox还包括几个命令行实用程序。PDFBox是在Apache 2.0版许可下发布。...OpenPDF :OpenPDF是一个免费Java库,用于使用LGPLMPL开源许可创建和编辑PDF文件。OpenPDF基于iText一个分支。...itext7 :iText 7代表了想要利用利用好 PDF 开发人员更高级别的 sdk。...iText 7配备了更好文档引擎、高级低级编程功能以及创建、编辑增强 PDF 文档能力,几乎对每个工作流都有好处。 FOP :Apache FOP 项目的主要输出目标是PDF

1.1K21

IDEA快捷键

关于各个快捷键频率分类上可能每个人都有各自看法,下面的整理也只是以我个人使用习惯来划分,而我应该是可以代表某一部分小众人员。...+ F10 等效于点击工具栏 Run 按钮 Shift + F11 弹出书签显示层 (必备) Shift + Tab 取消缩进 (必备) Shift + ESC 隐藏当前 或 最后一个激活工具窗口.../blog/1005454 Mac 快捷键 根据官方pdf翻译:https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard_Mac.pdf...Command + P 显示方法参数信息 Control + J 显示当前位置变量、方法 Documentation 内容 Control + J 快速查看文档 Shift + F1 查看外部文档...A 查找动作(可设置相关选项) Control + Shift + Tab 编辑窗口标签工具窗口之间切换(如果在切换过程加按上delete,则是关闭对应选中窗口) Other(一些官方文档上没有体现快捷键

1.1K42

Python处理PDF——PyMuPDF安装与使用

功能 对于所有支持文档类型可以: 解密文件 - 访问元信息、链接和书签 - 以栅格格式(PNG其他格式)或矢量格式SVG呈现页面 - 搜索文本 - 提取文本图像 - 转换为其他格式:PDF...\ Pixmap包含以下引用许多方法属性。其中包括整数宽度、高度(每个像素)跨距(一个水平图像行字节数)。属性示例表示表示图像数据矩形字节区域(Python字节对象)。...- "xml":不包含图像,但包含每个文本字符完整位置字体信息。使用XML模块进行解释。 e....因此,您可以轻松地使用创建新PDF: - 第一页或最后10页- 仅奇数页或偶数页(用于双面打印)- 包含或不包含给定文本页- 颠倒页面顺序 保存文档将包含仍然有效链接、注释和书签(i.a.w...连接拆分PDF文档 方法Document.insert_pdf()在不同pdf文档之间复制页面。

6.3K10

Python处理PDF——PyMuPDF安装与使用

功能 对于所有支持文档类型可以: 解密文件 - 访问元信息、链接和书签 - 以栅格格式(PNG其他格式)或矢量格式SVG呈现页面 - 搜索文本 - 提取文本图像 - 转换为其他格式:PDF...\ Pixmap包含以下引用许多方法属性。其中包括整数宽度、高度(每个像素)跨距(一个水平图像行字节数)。属性示例表示表示图像数据矩形字节区域(Python字节对象)。...- "xml":不包含图像,但包含每个文本字符完整位置字体信息。使用XML模块进行解释。 e....因此,您可以轻松地使用创建新PDF: - 第一页或最后10页- 仅奇数页或偶数页(用于双面打印)- 包含或不包含给定文本页- 颠倒页面顺序 保存文档将包含仍然有效链接、注释和书签(i.a.w...连接拆分PDF文档 方法Document.insert_pdf()在不同pdf文档之间复制页面。

7.1K30

PDF Explained(翻译)第一章 简介

流式创建和增量更新 流式创建允许PDF文件按照从头至尾顺序创建,即使文件比可用内存要大也没不会有任何问题。 增量更新意味着在编辑文件时,可以直接将更改写入文件末尾而无需改动现有内容。...特殊种类PDF 有一些PDF格式特殊变体,它们是PDF子集。每个文件都是一个合法PDF文档,但是做了一些限制。其中两个是PDF/APDF/X,他们有各自ISO标准。...PDF/A PDF/A标准(ISO 190005-1:2005)定义了一套文档规则,主要用于图片馆,档案馆一些机构长期存档文件。...创建者(创建内容程序)制作者(编写文件程序)也会被记录下来。每个文档还有一组唯一标识,以便通过工作流对其进行跟踪。...从PDF1.4版本开始,元数据可以使用XML存储,这些XML可以直接嵌入PDF中。这使得第三方可以在文档中保存与其特定工作流或产品相关信息。 导航 文档大纲,通常称为文档书签。 ?

1.6K20

顶级 Javaer 都在用 20 个类库,真香!

我花了很多时间来学习API,尤其是在阅读了Effective Java 3rd Edition之后 ,Joshua Bloch建议在Java 3rd Edition中使用现有的API进行开发,而不是为常见东西编写新代码...11、PDF库 与Microsoft ExcelWorld相似,PDF是另一种普遍存在格式。...如果您需要在应用程序中支持PDF功能,例如将数据导出为PDF文件,则可以使用iTextApache FOP库。两者都提供有用PDF相关功能,但是iText变得越来越丰富完善,我一直偏爱那种。...请参阅此处以了解有关iText更多信息。...您可以使用JSoup不仅解析HTML,还可以创建HTML文档 它提供了使用DOM,CSS类似jquery最好方法提取处理数据非常方便API。

12910

Python 处理 PDF —— PyMuPDF 安装与使用!

功能 对于所有支持文档类型可以: 解密文件 访问元信息、链接和书签 以栅格格式(PNG其他格式)或矢量格式SVG呈现页面 搜索文本 提取文本图像 转换为其他格式:PDF, (X)HTML, XML...\ Pixmap包含以下引用许多方法属性。其中包括整数宽度、高度(每个像素)跨距(一个水平图像行字节数)。属性示例表示表示图像数据矩形字节区域(Python字节对象)。..."xml":不包含图像,但包含每个文本字符完整位置字体信息。使用XML模块进行解释。 e....因此,您可以轻松地使用创建新PDF: 第一页或最后10页 仅奇数页或偶数页(用于双面打印) 包含或不包含给定文本页 颠倒页面顺序 保存文档将包含仍然有效链接、注释和书签(i.a.w.指向所选页面或某些外部资源...连接拆分PDF文档 方法Document.insert_pdf()在不同pdf文档之间复制页面。

1.7K10

Java程序员应该知道20个有用

我花了很多时间学习API,特别是在阅读Effective Java 3rd Edition之后,Joshua Bloch建议如何使用现有的API进行开发,而不是为常用东西写新代码。...1.日志库 日志库非常常见,因为在每个项目中都需要它们。它们是服务器端应用最重要东西,因为日志只放在可以看到应用程序当前运行时情况地方。...PDF库 与Microsoft Excel类似,PDF库是另一种普遍存在格式。如果你需要在应用程序中支持PDF功能,例如 导出数据到PDF文件,则可以使用iTextApache FOP库。...两者都提供有用PDF相关功能,但iText更丰富,更好。请参阅此处以了解有关iText更多信息。 ?...你不仅可以使用JSoup解析HTML,还可以创建HTML文档 ? 它提供了一个非常方便API,用于提取操作数据,使用DOM,CSS类似jquery方法。

78630

Python处理PDF——PyMuPDF安装与使用!

功能 对于所有支持文档类型可以: 解密文件 -  访问元信息、链接和书签 -  以栅格格式(PNG其他格式)或矢量格式SVG呈现页面 -  搜索文本 -  提取文本图像 -  转换为其他格式:PDF...\ Pixmap包含以下引用许多方法属性。其中包括整数宽度、高度(每个像素)跨距(一个水平图像行字节数)。属性示例表示表示图像数据矩形字节区域(Python字节对象)。...- "xml":不包含图像,但包含每个文本字符完整位置字体信息。使用XML模块进行解释。 e....因此,您可以轻松地使用创建新PDF: - 第一页或最后10页- 仅奇数页或偶数页(用于双面打印)- 包含或不包含给定文本页- 颠倒页面顺序 保存文档将包含仍然有效链接、注释和书签(i.a.w...连接拆分PDF文档 方法Document.insert_pdf()在不同pdf文档之间复制页面。

3.9K10

强大PDF编辑器adobe Acrobat软件下载安装教程以及版本更新历史

Acrobat 2.0:1994 年发布,支持 PDF 文档创建和编辑,并增加了批注、注释、书签等功能。...每个版本都具有不同功能特点,用户可以根据需求选择合适版本使用。...只需利用纸质文件或 PDF 文件中现有内容作为起点。就在 PDF 中进行更改,或者导出到 Microsoft Office 格式。而且当然是在您计算机、浏览器或移动设备上这样做。...兼容性:Acrobat通过不断地优化改进PDF文件兼容性,使得PDF文档可以在不同设备和平台上得到广泛支持使用。这也使得PDF成为了一种非常方便可靠文档格式。...例如,Acrobat支持在网页上显示交互式地使用PDF文档,使得PDF成为了一个非常方便流行网络文档格式。

75630

20个对Java程序员有用开源库

1.日志库 日志库非常常见,因为在每个项目中都需要它们。对于服务器端应用程序来说,日志是最重要,因为日志只放在您可以看到应用程序上发生了什么事情地方。...PDF 类库 与Microsoft Excel类似,PDF库是另一种无处不在格式。如果需要在应用程序中支持PDF功能,比如在PDF文件中导出数据,可以使用iTextApache FOP库。...两者都提供了有用PDF相关功能,但iText更丰富、更好。 12.日期时间相关库 在Java 8之前,JDK数据时间库有很多缺陷,因为它们不是线程安全、不可变容易出错。...HTML Parsing 库 与JSONXML类似,HTML是我们许多人不得不处理另一种常见文档格式。谢天谢地,我们有了JSoup,它极大地简化了在Java应用程序中使用HTML工作。...使用JSoup,您不仅可以解析HTML,还可以创建HTML格式文档 16.Cryptographic 库 Apache Commons Codec包包含简单编码器各种格式解码器,如Base64十六进制

1.1K20

Sublime 教程 for Economists

本文旨在为经济学专业学生老师,介绍一款文本编辑器,Sublime。...LatexTools:在Sublime内编译Latex文档(需安装Sumatra Pdf Viewer)。 LatexCwl:提供Latex语句自动填充。...Ctrl + ]: 缩进当前行 Ctrl + [: 取消缩进当前行 Ctrl + M: 跳到结束括号;重复操作跳到开始括号 Ctrl + Shift + M : 选择当前圆括号所有内容 Ctrl +...这两个插件安装方法跟上面介绍安装StataEditor方法类似,这里不再赘述了。 但如果我们希望能够在Sublime中预览pdf文档,需要安装Sumatra Pdf Viewer。...在引用文献时,输入 \cite{} 会跳出对话框提示现有bibtex中参考文献,直接点击想要引用文献名称即可,也可以直接在对话框里搜索文章或者作者名字。 ?

1.3K20

避免重复造轮子,Java 程序员必备!!

优秀且经验丰富 Java 开发人员特点之一是对 API 广泛了解,包括 JDK 第三方库。如何使用现有的 API 进行开发,而不是为常见东西编写新代码。是提升开发效率必选之路。...为了使用这些库,Java 开发人员应该熟悉这一点,这就是本文重点。如果您有一个想法,那么您可以研究该库并使用它。 1. 日志库 日志库非常常见,因为您在每个项目中都需要它们。...PDF 库 与 Microsoft Excel 类似,PDF 库是另一种普遍存在格式。...如果您需要在应用程序中支持 PDF 功能,例如 在 PDF 文件中导出数据,您可以使用 iText Apache FOP 库。 两者都提供有用 PDF 相关功能,但 iText 更丰富更好。...您可以使用JSoup不仅解析 HTML,还可以创建 HTML 文档 它提供了一个非常方便 API 用于提取操作数据,使用最好DOM、CSS 类似 jquery 方法。

71210

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券