PowerPoint C#에서 텍스트 추출

텍스트 분석을 수행하기 위해 PowerPoint 슬라이드에서 텍스트를 추출해야 하는 경우가 종종 있습니다. 반면에 추가 처리를 위해 텍스트를 추출하여 파일이나 데이터베이스에 저장할 수 있습니다. 이에 따라 이 기사에서는 C#을 사용하여 PowerPoint 프레젠테이션에서 텍스트를 추출하는 방법을 다룹니다. 특히 특정 슬라이드나 전체 프레젠테이션에서 텍스트를 추출하는 방법을 배웁니다.

PowerPoint PPTX에서 텍스트를 추출하는 C# API

PowerPoint 프레젠테이션을 조작하기 위해 Aspose는 .NET용 Aspose.Slides를 제공합니다. 상기 API는 .NET 애플리케이션에서 PowerPoint 자동화 기능을 구현하도록 설계되었습니다. 또한 PPTX 프레젠테이션에서 텍스트를 추출하는 몇 가지 간단한 방법을 제공합니다. API를 다운로드하거나 NuGet을 사용하여 설치할 수 있습니다.

PM> Install-Package Aspose.Slides.NET

C#의 PowerPoint 슬라이드에서 텍스트 추출

다음은 PowerPoint 프레젠테이션의 슬라이드에서 텍스트를 추출하는 단계입니다.

다음 코드 샘플은 C#을 사용하여 PowerPoint 슬라이드에서 텍스트를 추출하는 방법을 보여줍니다.

//PPTX 파일을 나타내는 PresentationEx 클래스를 초기화합니다.
Presentation pptxPresentation = new Presentation("demo.pptx");

//첫 번째 슬라이드에서 TextFrameEx 개체의 배열 가져오기
ITextFrame[] textFramesSlideOne = SlideUtil.GetAllTextBoxes(pptxPresentation.Slides[0]);

//TextFrames 배열을 통해 루프
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);
        }
    }
}

C#의 PowerPoint 프레젠테이션에서 텍스트 추출

.NET용 Aspose.Slides를 사용하여 전체 PowerPoint 프레젠테이션에서 텍스트를 추출할 수도 있습니다. 다음은 이 작업을 수행하는 단계입니다.

  • Presentation 클래스를 사용하여 프레젠테이션을 로드합니다.
  • SlideUtil.GetAllTextFrames() 메서드를 사용하여 프레젠테이션의 모든 텍스트 프레임을 가져옵니다.
  • ITextFrame을 반복하고 해당 Paragraphs에 액세스합니다.
  • 단락의 일부에 액세스하고 해당 텍스트를 인쇄합니다.

다음 코드 샘플은 PowerPoint 프레젠테이션에서 텍스트를 추출하는 방법을 보여줍니다.

//PPTX 파일을 나타내는 프레젠테이션 클래스를 시작합니다.
Presentation pptxPresentation = new Presentation("demo.pptx");

//PPTX의 모든 슬라이드에서 ITextFrame 개체 배열 가져오기
ITextFrame[] textFramesPPTX = Aspose.Slides.Util.SlideUtil.GetAllTextFrames(pptxPresentation, true);

//TextFrames 배열을 통해 루프
for (int i = 0; i < textFramesPPTX.Length; i++)
{
	//현재 ITextFrame의 단락 반복
	foreach (IParagraph para in textFramesPPTX[i].Paragraphs)
	{
		//현재 Iparagraph의 부분을 통해 루프
		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#을 사용하여 특정 슬라이드 또는 전체 프레젠테이션에서 텍스트를 추출하는 방법을 살펴보았습니다. 문서를 사용하여 .NET용 Aspose.Slides에 대해 자세히 알아볼 수 있습니다. 질문이나 혼동이 있는 경우 포럼을 통해 알려주십시오.

또한보십시오