Bài viết này chứa các bước và mẫu mã để chuyển đổi PDF sang PPT hoặc PPTX theo chương trình trong C#.

Chuyển đổi PDF sang PPT C#

PDF là một trong những định dạng được sử dụng rộng rãi để trao đổi tài liệu với độ tin cậy mà không cần lo lắng về vấn đề bố cục. Mặt khác, các bài thuyết trình PowerPoint (PPT/PPTX) đã giúp việc trình bày dữ liệu hoặc thông tin dưới dạng các trang chiếu tương tác trở nên dễ dàng hơn. Trong một số trường hợp, thông tin chứa trong tệp PDF cần được trình bày dưới dạng bản trình bày PowerPoint. Đối với trường hợp như vậy, bạn có thể giảm thiểu công sức bằng cách tự động hóa quy trình nhập thông tin từ PDF sang PowerPoint PPT/PPTX.

Để đối phó với tình huống nêu trên, bài viết này sẽ trình bày cách:

API C# để chuyển đổi PDF sang PowerPoint

Để chuyển đổi PDF sang PPT hoặc PPTX, chúng tôi sẽ sử dụng Aspose.PDF for .NET, một API PDF mạnh mẽ để tạo, xử lý và chuyển đổi tài liệu PDF. Aspose.PDF for .NET có sẵn trên NuGet cũng như ở dạng DLL trong phần Tải xuống.

Chuyển đổi PDF sang PPT hoặc PPTX trong C#

Sau đây là các bước để chuyển đổi tệp PDF sang bản trình bày PowerPoint bằng Aspose.PDF for .NET.

  • Tạo một đối tượng của lớp Document.
  • Tạo một đối tượng thuộc lớp PptxSaveOptions.
  • Gọi phương thức Document.Save() để lưu tệp PDF dưới dạng PPT hoặc PPTX.

Mẫu mã sau đây cho biết cách chuyển đổi PDF sang PPT trong C#.

// Tải tài liệu PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Lưu tập tin đầu ra
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

Tài liệu PDF

PowerPoint PPT đã chuyển đổi

Chuyển PDF sang PPT trong C# - Rendering Slides as Images

Trong trường hợp bạn muốn tránh có văn bản có thể chọn trong bản trình bày PowerPoint đã chuyển đổi, bạn có thể hiển thị từng trang chiếu dưới dạng hình ảnh. Đối với điều này, bạn có thể đặt thuộc tính PptxSaveOptions.SlidesAsImages thành true và các bước còn lại sẽ giữ nguyên.

Mẫu mã sau đây cho biết cách chuyển đổi PDF sang PPT có các trang chiếu dưới dạng hình ảnh trong C#.

// Tải tài liệu PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.SlidesAsImages = true;
// Lưu tập tin đầu ra
pdfDocument.Save("PDF to PPT.ppt", pptxOptions);

Theo dõi tiến trình chuyển đổi PDF sang PPT

Bạn cũng có thể theo dõi tiến trình của quá trình chuyển đổi PDF sang PPT bằng Aspose.PDF for .NET. Thông tin sau đây có thể được truy xuất về quá trình chuyển đổi:

  • Tổng tiến độ chuyển đổi
  • Kết thúc phân tích từng trang trước khi chuyển đổi
  • Tạo trang kết quả trước khi xuất vật lý
  • Xuất từng trang kết quả

Mẫu mã sau đây cho biết cách theo dõi quá trình chuyển đổi PDF sang PPT trong C#.

// Tải tài liệu PDF
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// Kết xuất slide dưới dạng hình ảnh
pptxOptions.SlidesAsImages = true;
// Theo dõi tiến trình trong bảng điều khiển
pptxOptions.CustomProgressHandler = ShowProgressOnConsole;
// Lưu tập tin đầu ra
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;
	} 
}

đầu ra

Những bài viết liên quan

Thông tin: Sử dụng API của riêng mình, Aspose đã phát triển dịch vụ trực tuyến miễn phí để chuyển đổi PDF sang PowerPoint.