aspose-words基础功能演示

我们在Aspose.Words中使用术语"渲染"来描述将文档转换为文件格式或分页或具有页面概念的介质的过程。我们正在讨论将文档呈现为页面。下图显示了 Aspose.Words 中的渲染情况。

Aspose.Words 的渲染功能使您能够执行以下操作:

  • 将文档或选定页面转换为 PDF、XPS、HTML、XAML、PostScript 和 PCL 格式。
  • 将文档转换为多页 TIFF 文档,或将任何页面转换为光栅图像并将其另存为 BMP、PNG 或 JPEG。
  • 将文档页面转换为可缩放矢量图形图像 (SVG),或转换为矢量图像并将其另存为 EMF。
  • 在对象上以特定大小或比例渲染(绘制)文档页面,Graphics以创建文档页面的缩略图、全尺寸或缩放图像。
  • Shape 对象与文档分开渲染为任何图像格式或对象Graphics
  • 在 Swing 组件中显示文档的任何页面。
  • 使用标准 Java 打印基础设施打印或预览文档页面。

流动布局或固定布局文档格式

大多数可以加载到 Aspose.Words 中的文档格式都称为"流布局"格式。流程布局格式包括 DOC、OOXML、RTF、ODT 和 HTML。这些格式的文档由各种元素组成,例如段落、表格、页眉、页脚、图像、字段及其格式(例如粗体、斜体、字体、大小)。但是,流程布局格式不包含有关每个特定段落或字符在页面上显示的位置的信息。

相比之下,"固定布局"(也称为"固定页面")格式(例如 PDF 和 XPS)包含所有文档元素的精确定位信息。这些格式在将文档布局到页面后保留了文档的原始外观,从而提供了更高的显示信息准确性。

页面布局引擎

Aspose.Words 实现了自己的页面布局引擎,可将流程布局文档格式化为页面。 Aspose.Words 实现了许多渲染器,这些渲染器要么生成固定布局文档(例如 PDF 或 XPS),要么将页面输出到另一种介质(例如打印或绘图)。请注意,导出也可以针对 HTML 和 XAML 进行分页。这意味着文档可以保存为常规 HTML 或 XAML(流布局格式),或者保存为具有元素绝对位置的"分页"HTML 和 XAML。

使用Aspose.Words页面布局引擎最重要的优点是它模仿了Microsoft Word页面布局引擎的工作方式。因此,当您将 Microsoft Word 文档转换为 PDF、XPS 或使用 Aspose.Words 打印时,输出几乎与 Microsoft Word 完成的一样。请注意,Aspose.Words 不使用 Microsoft Word。

Aspose的核心包是com.aspose.words

com.aspose.words包提供了无需使用 Microsoft Word 即可生成、转换、修改、呈现和打印 Microsoft Word 文档的类。

Aspose.Words 完全用 Java 编写。使用 Aspose.Words 不需要 Microsoft Word。

中的类com.aspose.words包借鉴了两个著名框架的最佳实践:Microsoft Word Automation 和 System.Xml。 Aspose.Words 中的文档由节点树表示,与 XML DOM 非常相似。在可能的情况下,类、方法和属性名称与 Microsoft Word Automation 中的名称相匹配。

此命名空间中的主要类是:

  • Document是表示 Microsoft Word 文档的对象模型的主要类。
  • DocumentBuilder提供了一种将内容和格式插入文档的简单方法。
  • Node是文档中所有节点的基类。
  • CompositeNode 是可以包含其他节点的文档的所有节点的基类,例如Paragraph , SectionTable和 。

com.aspose.words 包还包含构成 Aspose.Words 报告引擎的类。报告引擎允许使用来自各种数据源的数据快速轻松地填充在 Microsoft Word 中设计的文档,例如java.sql.ResultSet , array of ResultSets , com.aspose.words.net.System.Data.DataSet 或一个array of values.

官方文件转换实示例,该版本较高,如有不同请升级版本

官方示例地址

相关推荐
七星静香16 分钟前
laravel chunkById 分块查询 使用时的问题
java·前端·laravel
Jacob程序员17 分钟前
java导出word文件(手绘)
java·开发语言·word
ZHOUPUYU17 分钟前
IntelliJ IDEA超详细下载安装教程(附安装包)
java·ide·intellij-idea
stewie621 分钟前
在IDEA中使用Git
java·git
Elaine20239136 分钟前
06 网络编程基础
java·网络
G丶AEOM37 分钟前
分布式——BASE理论
java·分布式·八股
落落鱼201338 分钟前
tp接口 入口文件 500 错误原因
java·开发语言
想要打 Acm 的小周同学呀39 分钟前
LRU缓存算法
java·算法·缓存
镰刀出海42 分钟前
Recyclerview缓存原理
java·开发语言·缓存·recyclerview·android面试
阿伟*rui3 小时前
配置管理,雪崩问题分析,sentinel的使用
java·spring boot·sentinel