XPS 包内的跨包操作
通过 C++ 操作 XPS 包中的页面、颜色和字形 (Glyphs)
用于 C++ 的 Aspose.Page API 提供了用于处理 XPS 文件的独立类库,使您可以将它们作为一种独特的格式进行处理。该类库拥有多种有用的功能,包括合并 XPS 文档、将其转换为其他格式,以及在其内操纵图形。
XPS 文件的一个关键特性是它们能够在单个文档中包含多个文件。因此,Aspose.Page XPS 类库提供了管理这些内部文件及其页面的功能。这些称为“跨包操作 (cross-package operations)”的操作,涉及跨不同 XPS 文档操作内容。
本节将深入探讨跨包操作的具体示例,例如管理单个 XPS 文档中的页面,以及添加具有特定颜色的文本(字形)。
但是要尝试该功能,您首先需要获取解决方案:
打开 NuGet 包管理器 (Package Manager),搜索 Aspose.Page 并安装。您也可以在程序包管理器控制台 (Package Manager Console) 中使用以下命令。
在 XPS Package C++ 中操作页面的步骤。
- 设置文档目录的路径。
- 使用 XpsDocument 类 创建一个 XPS 文件。
- 要将活动页面从一个文档插入到另一个文档的开头,请使用 InsertPage() 方法。
- 要将活动页面从一个文档插入到另一个文档的末尾,请使用 AddPage() 方法。
- 要删除空白页,请使用 RemovePage() 方法。
- 要将页面从一个文档删除(移动)到另一个文档,请使用 InsertPage() 和 SelectActivePage() 方法。
- 使用 XPsDocument.Save 方法保存更改后的 XPS 文档。
操作页面
在 XPS Package C++ 内添加字形克隆的步骤。
- 设置文档目录的路径。
- 打开 XPS 文件的流 (stream)。
- 使用 XpsDocument 类创建一个 XPS 文件。
- 使用 AddGlyphs() 方法将字形添加到文档中。
- 使用 XpsDocument 类创建第二个 XPS 文件。
- 要将字形从第一个文件克隆(复制)到第二个文件,请使用 Add() 和 Clone() 方法。
- 通过 XPsDocument.Save() 方法保存两个 XPS 文档。
添加字形克隆并更改颜色
添加图像填充的字形 C++ 的步骤。
- 设置文档目录的路径。
- 打开 XPS 文件的流。
- 使用 XpsDocument 类创建一个 XPS 文件。
- 使用 AddGlyphs() 方法将字形添加到文档中。
- 要用图像笔刷 (image brush) 填充字形,请使用 CreateImageBrush() 方法。
- 使用 XpsDocument 类创建第二个 XPS 文件。
- 使用 AddGlyphs() 方法将带有第一个文档字体的字形添加到第二个文档中。
- 从第一个文档的填充创建图像笔刷,并使用 CreateImageBrush() 方法填充第二个文档中的字形。
- 通过 XPsDocument.Save() 方法保存两个 XPS 文档。
添加图像填充字形和外部图像
XPS 什么是XPS文件格式
XPS(XML Paper Specification)是 Microsoft 的 PDF 替代方案,基于 XML/HTML,跨平台保持布局一致,且不依赖操作系统。