首页
学习
活动
专区
工具
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.3K50

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

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。

13110

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方法。

78730

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.8K10

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成为了一个非常方便流行网络文档格式。

76430

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

避免重复造轮子,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 方法。

71410

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券