Trích xuất văn bản từ PowerPoint C#

Bạn thường có thể cần trích xuất văn bản từ các trang chiếu PowerPoint để thực hiện phân tích văn bản. Mặt khác, bạn có thể muốn trích xuất và lưu văn bản trong một tệp hoặc cơ sở dữ liệu để xử lý thêm. Theo đó, bài viết này trình bày cách trích xuất văn bản từ bản trình bày PowerPoint bằng C#. Đặc biệt, bạn sẽ học cách trích xuất văn bản từ một trang chiếu cụ thể hoặc toàn bộ bản trình bày.

API C# để trích xuất văn bản từ PowerPoint PPTX

Để thao tác với các bản trình bày PowerPoint, Aspose cung cấp Aspose.Slides for .NET. API nói trên được thiết kế để triển khai các tính năng tự động hóa PowerPoint trong các ứng dụng .NET. Nó cũng cung cấp một số cách đơn giản để trích xuất văn bản từ các bản trình bày PPTX. Bạn có thể tải xuống API hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.Slides.NET

Trích xuất văn bản từ một trang chiếu PowerPoint trong C#

Sau đây là các bước để trích xuất văn bản từ một trang chiếu trong bản trình bày PowerPoint.

Mẫu mã sau đây cho thấy cách trích xuất văn bản từ trang chiếu PowerPoint bằng C#.

//Instatiate PresentationEx lớp đại diện cho một tệp PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Nhận một mảng các đối tượng TextFrameEx từ trang chiếu đầu tiên
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//Vòng qua Mảng TextFrames
for (int i = 0; i < textFramesSlideOne.Length; i++)
{
    //Lặp qua các đoạn trong TextFrame hiện tại
    foreach (Paragraph para in textFramesSlideOne[i].Paragraphs)
    {
        //Lặp qua các phần trong Đoạn hiện tại
        foreach (Portion port in para.Portions)
        {
            //Hiển thị văn bản trong phần hiện tại
            Console.WriteLine(port.Text);

            //Hiển thị chiều cao phông chữ của văn bản
            Console.WriteLine(port.PortionFormat.FontHeight);

            //Hiển thị tên phông chữ của văn bản
            Console.WriteLine(port.PortionFormat.LatinFont.FontName);
        }
    }
}

Trích xuất văn bản từ bản trình bày PowerPoint trong C#

Bạn cũng có thể trích xuất văn bản từ toàn bộ bản trình bày PowerPoint bằng Aspose.Slides for .NET. Sau đây là các bước để thực hiện thao tác này.

  • Tải bản trình bày bằng lớp Trình bày.
  • Lấy tất cả các khung văn bản trong bản trình bày bằng phương pháp SlideUtil.GetAllTextFrames().
  • Lặp qua từng ITextFrame và truy cập Đoạn của nó.
  • Truy cập các phần của đoạn văn và in văn bản của chúng.

Mẫu mã sau đây cho biết cách trích xuất văn bản từ bản trình bày PowerPoint.

//Lớp trình bày Instatiate đại diện cho một tệp PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Nhận một mảng các đối tượng ITextFrame từ tất cả các trang chiếu trong PPTX
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//Vòng qua Mảng TextFrames
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//Lặp qua các đoạn trong ITextFrame hiện tại
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//Lặp qua các phần trong IParagraph hiện tại
		foreach (IPortion port in para.Portions)
		{
			//Hiển thị văn bản trong phần hiện tại
			Console.WriteLine(port.Text);

			//Hiển thị chiều cao phông chữ của văn bản
			Console.WriteLine(port.PortionFormat.FontHeight);

			//Hiển thị tên phông chữ của văn bản
			if (port.PortionFormat.LatinFont != null)
				Console.WriteLine(port.PortionFormat.LatinFont.FontName);
		}
	}
}

Nhận giấy phép API miễn phí

Trong trường hợp bạn muốn dùng thử API mà không có giới hạn đánh giá, bạn có thể nhận giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài này, bạn đã học cách trích xuất văn bản từ bản trình bày PowerPoint. Đặc biệt, bạn đã thấy cách trích xuất văn bản từ một trang chiếu cụ thể hoặc toàn bộ bản trình bày bằng C#. Bạn có thể khám phá thêm về Aspose.Slides for .NET bằng tài liệu. Trong trường hợp bạn có bất kỳ thắc mắc hoặc nhầm lẫn nào, hãy thông báo cho chúng tôi qua diễn đàn của chúng tôi.

Xem thêm