一、关于pdf文件说明
什么是pdf文件?
PDF是Portable Document Format的缩写,用来以电子形式显示文档,不受软件、硬件或者操作系统的影响。
最初是由Adobe开发,是一种基于PostScript格式的通用兼容文件格式,现在已成为交换文档和信息的国际标准。
PDF文档是文本和二进制数据的组合。如果在文本编辑器中打开,可以看到定义文档机构和具体内容的原始对象。
PDF文档的逻辑结构是分层的,用来控制文档的绘制文档的顺序。PDF由四个部分组成:
- 对象
- 文件结构
- 文档结构
- 内容流
二、DOM API介绍
DOM(Document Object Model)是作为结构化文档面向对象模型的易中表示形式。DOM是W3C(World Wide Web Consortium)的官方标准,与语言和平台无关的结构化文档。
简单地说,DOM是标是文档结构的对象树。Aspose.PDF延用了DOM思想,还是以对象的形式表示PDF文档结构。然而,DOM的各个方面(比如他的元素)是受编程语言语法影响的。DOM的公共接口在其应用程序接口(API)中指定。
三、PDF文档结构
由于PDF文件结构是分层的,Aspose.PDF也以同样的方式访问元素。如下展示了PDF文档的逻辑结构以及Aspose.PDF DOM API如何构造。
四、访问PDF文档元素
Document对象是整个对象模型的更节点。Aspose.PDF允许你创建Document对象,然后访问层级结构中的所有其他对象。可以访问任何集合(Pages)或者任何单个元素(Page)。DOM API提供单个入口和出口来操作PDF文档,如下所示:
- 打开PDF文档
- 以DOM形式访问PDF文档结构
- 更新PDF文档中的数据
- 校验PDF文档
- 导出PDF文档为不同的格式
- 保存已更新的PDF文档
五、如何使用新的Aspose.PDF for Java API
本章将介绍新的Aspose.PDF for Java API,指导你快速轻松地入门。
请注意,有关特定功能使用的详细信息将不在该章节介绍。
Aspose.PDF for Java由两部分组成:
- Aspose.PDF for Java DOM API
- Aspose.PDF.Facades
后续会详细介绍。
六、Aspose.PDF for Java DOM API
新的Aspose.PDF for Java API与PDF文档一一对应,不仅在文件和文档级别,而是在对象级别处理PDF文档帮助到你。提供了更多的灵活性来访问PDF文档的所有元素和对象。使用Aspose.PDF DOM API的类,可以获得对文档元素和格式的编程式访问。新的DOM API由各种各样命名空间组成,如下:
com.aspose.pdf
这个命名空间提供了打开和保存PDF文档的文档。License类也是这个包的一部分。同时也提供了PDF相关的pages, attachments, and bookmarks,像com.aspose.pdf.Page, com.aspose.pdf.PageCollection, com.aspose.pdf.FileSpecification, com.aspose.pdf.EmbeddedFileCollection, com.aspose.pdf.OutlineItemCollection, and com.aspose.pdf.OutlineCollection等。
com.aspose.pdf.text
这个命名空间提供了处理文本以及其他一些类,比如com.aspose.pdf.Font、com.aspose.php、com.ontCollection、com.aspose.pdf.FontRepository、com.aspse.pdf.Fon tStyles、com.aspse.pdf.TextAbsorber、com.aspuse.pdf.text Fragment、,com.aspose.pdf.TextSegment和com.aspose.php TextSegmentCollection等。
com.aspose.pdf.TextOptions
这个命名空间提供了设置用于查找、编辑或者替换文本的不同选项的类,比如com.aspose.pdf.TextEditOptions、com.aspose.pdf.TextReplaceOptions和com.aspose/pdf.TextSearchOptions。
com.aspose.pdf.PdfAction
这个命名空间包含了帮助你处理PDF文档的交互式功能的类,比如处理文档和其他操作。此命名空间包含com.aspose.pdf.GoToAction、com.aspose.php、GoToRemoteAction和com.aspose.pdf、GoToURIAction等类。
com.aspose.pdf.Annotation
Annotations是PDF文档交互功能的一部分,此命名空间包含处理Annotation的类,比如com.aspose.pdf.Annotation、com.aspose.php、AnnotationCollection、com.aspose.pdf.CircleAnnotation和com.aspose.pdf、LinkAnnotation等。
com.aspose.pdf.Form
这个命名空间包含了处理PDF表单和表单字段的类,比如com.aspose.pdf.Form, com.aspose.pdf.Field, com.aspose.pdf.TextBoxField and com.aspose.pdf.OptionCollection等。
com.aspose.pdf.devices
我们可以对PDF文档执行各种操作,例如将PDF文档转换成各种格式的图像格式。但是,此类操作不属于Document对象,不对对此去拓展Document类。因此,新的DOM API单独设置了devices类。
com.aspose.pdf.facades
在Aspose.PDF for Java之前的版本,需要Aspose PDF.Kit for Java来操作现有的PDF文档。要执行旧的Aspose PDF.Kit代码,可以使用此命名空间。