Microsoft Publisher (PUB) 文件用于创建各种文档,包括小册子、传单和新闻通讯。但是,PUB 文件并未得到广泛支持,许多应用程序无法打开它们。在某些情况下,您可能需要将 PUB 文件转换为 PNG 图像。在这篇博文中,我们将学习如何在 C# 中将 PUB 转换为 PNG。
本文涵盖以下主题:
C# API 将 PUB 转换为 PNG
将 PUB 转换为 PNG 图像包括两个步骤。首先,我们将使用 Aspose.PUB for .NET API 加载 PUB 文件并将其渲染为 PDF 格式。之后,PDF 文件的页面将使用 Aspose.PDF for .NET API 转换为 JPG 图像。
请下载 API 的 DLL 或使用以下 NuGet 命令安装它们:
PM> Install-Package Aspose.Pdf
PM> Install-Package Aspose.PUB
如何将 Publisher PUB 文件转换为 PNG
我们可以按照以下步骤轻松将 PUB 文件转换为 PNG 图像:
- 创建 PUB 解析器并解析 PUB 文件。
- 将 PUB 转换为 PDF 文件流。
- 循环浏览 PDF 文档的所有页面。
- 创建 PNG 设备并处理页面以另存为 PNG 图像。
现在,让我们看看如何在 C# 中执行这些步骤将 Publisher PUB 文件转换为 PNG。
使用 C# 将 PUB 转换为 PNG
我们可以通过以下步骤轻松地在 C# 中将 PUB 文件转换为 PNG 图像:
- 使用 PubFactory.CreateParser() 创建 PUB 解析器。
- 使用 ConvertToPdf() 方法将 PUB 转换为 PDF 文件。
- 使用 Document 类对象加载 PDF 文档。
- 循环浏览所有 PDF 页面。
- 使用 PngDevice 类对象创建 PNG 设备。
- 调用 Process() 方法并保存转换后的 PNG 图像。
以下代码示例演示如何在 C# 中将 PUB 文件转换为 PNG 图像。
// 此代码示例演示如何将 Publisher PUB 文件转换为 PNG 图像格式。
// 加载PUB文件并创建PUB解析器
var parser = PubFactory.CreateParser("C:\\Files\\sample.pub");
// 解析PUB文件
var doc = parser.Parse();
// 初始化内存流
MemoryStream stream = new MemoryStream();
// 将 PUB 转换为 PDF 文件
PubFactory.CreatePdfConverter().ConvertToPdf(doc, stream);
// 加载PDF文档流
Aspose.Pdf.Document document = new Aspose.Pdf.Document(stream);
// 循环浏览 PDF 的所有页面
foreach (Page page in document.Pages)
{
// 获取 PDF 文件信息
PdfFileInfo info = new PdfFileInfo(document);
// 获取页面宽度和高度
int width = Convert.ToInt32(info.GetPageWidth(page.Number));
int height = Convert.ToInt32(info.GetPageHeight(page.Number));
// 创建分辨率对象
Resolution resolution = new Resolution(300);
// 创建具有指定宽度、高度和分辨率的 Jpeg 设备
PngDevice PngDevice = new PngDevice(width, height, resolution);
// 处理页面文件并保存输出 JPEG 图像
PngDevice.Process(page, "C:\\Files\\Page" + page.Number + ".png");
}
获取免费的 API 许可证
您可以通过请求免费临时许可证来评估 API 的全部功能。
PUB 到 PNG 在线转换器
请尝试这个免费的PUB to PNG Converter在线应用程序,将出版商文件转换为PNG图像,而无需安装任何软件或插件。
PUB 文件转 PNG – 学习资源
除了将 Publisher PUB 文件转换为 PNG 图像之外,还可以使用以下资源探索 Aspose.PUB for .NET 的各种其他功能:
结论
在本文中,我们学习了如何在 C# 中以编程方式将 PUB 转换为 PNG。通过遵循本文中概述的步骤,您可以开发自己的 PUB 到 PNG 转换器应用程序。如有任何疑问,请随时通过我们的免费支持论坛与我们联系。