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 để trích xuất văn bản từ PowerPoint PPTX
- Trích xuất văn bản từ một trang chiếu PowerPoint
- Trích xuất văn bản từ bản trình bày PowerPoint
- Nhận giấy phép API miễn phí
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.
- 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 từ một trang chiếu vào mảng ITextFrame bằng cách sử dụng phương thức SlideUtil.GetAllTextBoxes().
- Lặp qua từng ITextFrame và truy cập văn bản của nó bằng thuộc tính ITextFrame.Paragraphs.
- Lấy và in văn bản từ mỗi Phần của đoạn văn.
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.