Вилучення тексту з PowerPoint C#

Вам може часто знадобитися витягти текст зі слайдів PowerPoint, щоб виконати аналіз тексту. З іншого боку, ви можете витягти та зберегти текст у файлі або базі даних для подальшої обробки. Відповідно до цього, у цій статті розповідається про те, як отримати текст із презентацій PowerPoint за допомогою C#. Зокрема, ви дізнаєтеся, як витягти текст із певного слайда чи всієї презентації.

C# API для вилучення тексту з PowerPoint PPTX

Для роботи з презентаціями PowerPoint Aspose пропонує Aspose.Slides for .NET. Зазначений API призначений для реалізації функцій автоматизації PowerPoint у програмах .NET. Він також надає кілька простих способів вилучення тексту з презентацій PPTX. Ви можете завантажити API або встановити його за допомогою NuGet.

PM> Install-Package Aspose.Slides.NET

Вилучення тексту зі слайда PowerPoint у C#

Нижче наведено кроки для вилучення тексту зі слайда в презентації PowerPoint.

  • Завантажте презентацію за допомогою класу Presentation.
  • Отримайте всі текстові кадри зі слайда в масив ITextFrame за допомогою методу SlideUtil.GetAllTextBoxes().
  • Перегляньте кожен ITextFrame і отримайте доступ до його тексту за допомогою властивості ITextFrame.Paragraphs.
  • Отримайте та надрукуйте текст із кожної частини абзацу.

У наведеному нижче прикладі коду показано, як отримати текст зі слайда PowerPoint за допомогою C#.

//Встановіть клас PresentationEx, який представляє файл PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Отримайте масив об’єктів TextFrameEx з першого слайда
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//Переглядайте масив текстових кадрів
for (int i = 0; i < textFramesSlideOne.Length; i++)
{
    //Перегляд абзаців у поточному TextFrame
    foreach (Paragraph para in textFramesSlideOne[i].Paragraphs)
    {
        //Переглядайте частини поточного абзацу
        foreach (Portion port in para.Portions)
        {
            //Показати текст у поточній частині
            Console.WriteLine(port.Text);

            //Показати висоту шрифту тексту
            Console.WriteLine(port.PortionFormat.FontHeight);

            //Відображення назви шрифту тексту
            Console.WriteLine(port.PortionFormat.LatinFont.FontName);
        }
    }
}

Вилучення тексту з презентації PowerPoint на C#

Ви також можете витягнути текст із усієї презентації PowerPoint за допомогою Aspose.Slides for .NET. Нижче наведено кроки для виконання цієї операції.

  • Завантажте презентацію за допомогою класу Presentation.
  • Отримайте всі текстові кадри в презентації за допомогою методу SlideUtil.GetAllTextFrames().
  • Перегляньте кожен ITextFrame і перейдіть до його Абзаців.
  • Отримайте доступ до частин абзаців і надрукуйте їхній текст.

У наведеному нижче прикладі коду показано, як отримати текст із презентації PowerPoint.

//Клас Instatiate Presentation, який представляє файл PPTX
Presentation pptxPresentation = new Presentation("demo.pptx");

//Отримайте масив об’єктів ITextFrame з усіх слайдів у PPTX
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//Переглядайте масив текстових кадрів
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//Перегляд абзаців у поточному ITextFrame
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//Переглядайте частини в поточному IPparagraph
		foreach (IPortion port in para.Portions)
		{
			//Показати текст у поточній частині
			Console.WriteLine(port.Text);

			//Показати висоту шрифту тексту
			Console.WriteLine(port.PortionFormat.FontHeight);

			//Відображення назви шрифту тексту
			if (port.PortionFormat.LatinFont != null)
				Console.WriteLine(port.PortionFormat.LatinFont.FontName);
		}
	}
}

Отримайте безкоштовну ліцензію API

Якщо ви хочете випробувати API без обмежень оцінки, ви можете отримати безкоштовну тимчасову ліцензію.

Висновок

У цій статті ви дізналися, як видобувати текст із презентацій PowerPoint. Зокрема, ви бачили, як витягти текст із певного слайда чи всієї презентації за допомогою C#. Ви можете дізнатися більше про Aspose.Slides for .NET за допомогою документації. Якщо у вас виникли запитання чи непорозуміння, повідомте нас через наш форум.

Дивись також