用 C# 操作 Publisher 文件的 API

Aspose.PUB for .NET 可让您在 .NET 应用程序中处理 PUB 文件。它支持操作结构简单、定义明确的 .pub 文件。

编辑 PUB 文件的元数据

Aspose.PUB 可访问 .pub 文件的元数据###

Microsoft Publisher (.pub) 文件有关于文件本身的元数据信息。以下是使用此 API 解决方案可以获取的信息示例:

元数据描述
应用程序名称用于创建文档的应用程序的名称
标题出版物的标题。
作者创建出版物的个人或实体的名称。
版本版本值
主题与出版物相关的简短描述或主题。
元数据描述
应用程序名称用于创建文档的应用程序的名称
标题出版物的标题。
作者创建出版物的个人或实体的名称。
版本版本值
主题与出版物相关的简短描述或主题。
关键词用于描述出版物内容的相关关键词或标签。
注释与出版物相关的附加说明。
创建日期出版物最初创建的日期。
修改日期出版物最后编辑的日期。
最后一位作者上次更改文档的人员的姓名。
模板创建文档的特定于应用程序的模板。
字符数提供文档中的总字符数。
字数提供文档中的总字数。
页数提供文档的总页数。

Aspose.PUB for .NET 提供的处理 .pub 文件元数据的功能###

元数据描述文档的标题、公司、语言等属性及相关信息。以下示例解析 halloween-flyer.pub,并通过 DocSummaryInfo 和 SummaryInfo 类更新八个属性。这些更改仅影响内存中解析后的 Document;此示例不会保存修改后的 PUB 文件。

在这些示例中,DataDir 是输入目录,OutputDir 是输出目录。请将它们设置为您自己的目录,并在运行流示例前确保输出目录存在。在应用程序中使用这些代码片段时,请导入 Aspose.Pub 和 System.IO 命名空间。

 1// Edit the metadata of a parsed PUB document in memory
 2
 3// Parse the input Publisher document.
 4string fileName = Path.Combine(DataDir, "halloween-flyer.pub");
 5IPubParser parser = PubFactory.CreateParser(fileName);
 6Document document = parser.Parse();
 7
 8// Update document metadata. These changes do not save a PUB file.
 9document.DocumentSummaryInfo.SetCategory("category");
10document.DocumentSummaryInfo.SetCompany("company");
11document.DocumentSummaryInfo.SetLanguage("language");
12
13document.SummaryInfo.SetComments("comments");
14document.SummaryInfo.SetKeywords("keywords");
15document.SummaryInfo.SetLastAuthor("last author");
16document.SummaryInfo.SetTitle("title");
17document.SummaryInfo.SetSubject("subject");
Example-EditMetadata.cs hosted with ❤ by GitHub

将输出写入数据流

以下示例将 PUB 文档转换为 TIFF,并将结果写入文件流。using 块会在转换后关闭流。示例的处理步骤如下:

  1. 使用 Path.Combine(DataDir, "halloween-flyer.pub") 构建输入路径。
  2. 使用 PubFactory.CreateParser(fileName) 创建 IPubParser,然后调用 parser.Parse() 获取 Document 对象。
  3. 使用 Path.Combine(OutputDir, "halloween-flyer_out.tiff") 构建 outPath,并通过 File.Create(outPath) 打开输出流。这会创建文件,或清空现有文件的内容。
  4. 调用 PubFactory.CreatePubConverter() 创建转换器,然后调用 ConvertToFormat(doc, outputStream, PubExportFormats.Tiff) 将 TIFF 数据写入流。using 块结束时会释放流。

使用支持的 PubExportFormats 将 PUB 转换为另一种格式的方法与此类似

 1// Convert a PUB document to TIFF using an output stream
 2
 3// Parse the input Publisher document.
 4string fileName = Path.Combine(DataDir, "halloween-flyer.pub");
 5IPubParser parser = PubFactory.CreateParser(fileName);
 6Document doc = parser.Parse();
 7
 8// Write TIFF output to a file stream and close it after conversion.
 9string outPath = Path.Combine(OutputDir, "halloween-flyer_out.tiff");
10using (FileStream outputStream = File.Create(outPath))
11{
12    PubFactory.CreatePubConverter().ConvertToFormat(doc, outputStream, PubExportFormats.Tiff);
13}

要了解所有 .NET 代码示例和数据文件,请访问 Aspose.PUB-Documentation for C# Github 项目。

还可查看 Aspose.PUB 在一组 用于处理 .pub 文件的跨平台应用程序 中提供的功能。