本文包含在 C# 中以編程方式將 PDF 轉換為 PPT 或 PPTX 的步驟和代碼示例。

PDF轉PPT C#

PDF 是一種廣泛使用的格式,可以可靠地交換文檔而無需擔心佈局問題。另一方面,PowerPoint 演示文稿 (PPT/PPTX) 可以更輕鬆地以交互式幻燈片的形式呈現數據或信息。在某些情況下,需要將 PDF 文件中包含的信息呈現為 PowerPoint 演示文稿。對於這種情況,您可以通過自動化將信息從 PDF 導入到 PowerPoint PPT/PPTX 的過程來最大程度地減少工作量。

為了處理上述場景,本文將演示如何:

用於 PDF 到 PowerPoint 轉換的 C# API

為了將 PDF 轉換為 PPT 或 PPTX,我們將使用 Aspose.PDF for .NET 這是一個強大的 PDF API 來創建、處理和轉換 PDF 文檔。 Aspose.PDF for .NET 可在 NuGet 上獲得,也可以在 下載 部分以 DLL 的形式獲得。

在 C# 中將 PDF 轉換為 PPT 或 PPTX

以下是使用 Aspose.PDF for .NET 將 PDF 文件轉換為 PowerPoint 演示文稿的步驟。

以下代碼示例顯示瞭如何在 C# 中將 PDF 轉換為 PPT。

// 載入PDF文件
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// 保存輸出文件
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

PDF文檔

轉換後的 PowerPoint PPT

在 C# 中將 PDF 轉換為 PPT - 將幻燈片渲染為圖像

如果您想避免在轉換後的 PowerPoint 演示文稿中出現可選擇的文本,您可以將每張幻燈片呈現為圖像。為此,您可以將 PptxSaveOptions.SlidesAsImages 屬性設置為 true,其餘步驟將保持不變。

下面的代碼示例顯示瞭如何在 C# 中將 PDF 轉換為以幻燈片作為圖像的 PPT。

// 載入PDF文件
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// 保存輸出文件
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

跟踪 PDF 到 PPT 的轉換進度

您還可以使用 Aspose.PDF for .NET 跟踪 PDF 到 PPT 轉換過程的進度。可以檢索有關轉換過程的以下信息:

  • 轉換總進度
  • 轉換前每個頁面的分析結束
  • 在物理導出之前創建結果頁面
  • 每個結果頁面的導出

以下代碼示例顯示如何在 C# 中跟踪 PDF 到 PPT 的轉換。

// 載入PDF文件
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// 將幻燈片呈現為圖像
pptxOptions.SlidesAsImages = true;
// 在控制台中跟踪進度
pptxOptions.CustomProgressHandler = ShowProgressOnConsole;
// 保存輸出文件
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

//----------------------------------

public static void ShowProgressOnConsole(PptxSaveOptions.ProgressEventHandlerInfo eventInfo)
{ 
	switch (eventInfo.EventType)
	{
		case ProgressEventType.TotalProgress:
			Console.WriteLine(String.Format("{0}  - Conversion progress : {1}% .", DateTime.Now.TimeOfDay, eventInfo.Value.ToString()));
			break;
		case ProgressEventType.ResultPageCreated:
			Console.WriteLine(String.Format("{0}  - Result page's {1} of {2} layout created.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
			break;
		case ProgressEventType.ResultPageSaved:
			Console.WriteLine(String.Format("{0}  - Result page {1} of {2} exported.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
			break;
		case ProgressEventType.SourcePageAnalysed:
			Console.WriteLine(String.Format("{0}  - Source page {1} of {2} analyzed.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
			break;

		default:
			break;
	} 
}

輸出

相關文章

信息:Aspose 使用自己的 API 開發了將 PDF 轉換為 PowerPoint 的免費在線服務。