本文很多资源来自http://developers.itextpdf.com/content/itext-7-jump-start-tutorial
在层次结构的顶部,我们找到了IPropertyContainer界面。此接口定义设置,获取和删除属性的方法。这个接口有两个直接的子接口:IElement和IRenderer。该IElement接口将由例如来实现Text,Paragraph和Table。这些是我们将直接或间接添加到文档中的对象。该IRenderer接口将由例如来实现TextRenderer,ParagraphRenderer和TableRenderer。这些渲染器由iText在内部使用,但如果我们想要调整渲染对象的方式,我们可以将它们子类化。
该IElement接口有两个自己的子接口。该ILeafElement接口将通过不包含任何其他元素的构建块来实现。例如:您可以向对象添加元素Text或Image元素Paragraph,但不能向元素Text或Image元素添加任何对象。Text并Image实现ILeafElement接口以反映这一点。最后,还有一个LargeElement界面,允许您在添加完所有内容之前渲染对象。它由Table类实现,这意味着在完成添加所有文件之前将表添加到文档中Cell对象。通过这样做,您可以减少内存使用:可以在内容完成之前呈现的所有表内容可以从内存中刷新。
该IPropertyContainer接口是由抽象的实现ElementPropertyContainer类。这个类有三个子类;
Style:是各种样式属性,如利润率,填充和旋转的容器。它继承了抽象ElementPropertyContainer类中的样式值,如宽度,高度,颜色,边框和对齐方式。
RootElement:定义的方法来添加内容,使用任一种add()方法或showTextAligned()方法。
Document:将此内容添加到页面。
Canvas:不知道页面的概念。它充当高级布局 API和内核 API 之间的桥梁。
给出了AbstractElement实现的概述。
从类派生的所有类都AbstractElement实现了IElement接口。Text,Image,Tab并且Link也实现了ILeafElement接口。ILargeElement接口仅由Table类实现。基本构建块使您可以轻松创建标记的PDF。
所有向文档添加的内容都是以对象为单位的,如Phrase、Paragraph、Table、Graphic对象等。比较常用的是段落(Paragraph)对象,用于向文档中添加一段文字。
PdfWriter是一个可以写PDF文件的对象,它不需要了解它要写的pdf的实际内容是什么,PdfWriter不需要知道文档是什么,一旦文件结构完成,它就写不同的文件部分,不同的对象,构成一个有效的文档。PdfWriter的初始化参数可以是文件名或者Stream。
Document是创建自给自足的PDF时的默认根元素。它管理高级操作,例如设置页面大小和旋转,添加元素以及在特定坐标处写入文本。它不了解实际的PDF概念和语法。可以通过扩展DocumentRenderer类并使用该setRenderer()方法设置此自定义渲染器的实例来修改Document的渲染行为。
Canvas 用于在使用a上的绝对位置定义的特定矩形内添加BlockElement和Image内容PdfCanvas。Canvas不知道页面的概念,不适合矩形的内容将丢失。此类充当高级布局API和内核API之间的桥梁。
Text:是任意长度的文本。它是可以承载特定布局属性的最小内容。
Link:链接,可单击部分{@link Text}。这个概念在很大程度上类似于HTML锚标签。
Image:图片处理
Paragraph:表示文本和图形的自包含块的布局元素。
Div:它定义文档中的一个部分,该部分将具有一些共享的布局属性。它将尽可能占用尽可能多的水平空间。
List:列表处理
ListItem:列表项是一个布局元素,它是List中的一个条目
Table:表格处理
Cell:单元格处理
LineSeparator:行分隔符
1、生成一个PDF
2、设置页面大小,页面背景色,页边空白,Title,Author,Subject,Keywords
3、设置密码
4、添加Page
5、添加水印(背景图)
6、插入页面元素
7、删除Page
8、插入Page
9、排序page
10、目录
11、Header, Footer
12、文字对齐
13、幻灯片放映
14、压缩PDF到Zip
15、分割PDF
16、合并PDF
17、添加注释
18、设置页眉页脚
1、插入Chunk, Phrase, Paragraph, List
2、插入Anchor, Image, Chapter, Section
3、画图
4、插入图像
5、插入一个Table
6、设置段落
7、表格嵌套
8、设置表格宽度
9、设置表格前后间隔
10、设置单元格宽度
11、设置单元格高度
12、设置单元格颜色
13、设置表头
14、分割表格
15、设置单元格留白
16、设置单元格边框
后续章节将一步一步实现上面操作,同时学习从pdf模板生成pdf文件,以及html生成pdf文件,敬请期待!