OneNote의 테이블은 회의록, 데이터 로그에서 빠른 비교 시트까지 정보를 정리하는 데 도움이 됩니다. OneNote의 테이블에서 텍스트를 프로그래밍 방식으로 추출해야 하는 특정 경우가 있습니다. 아마도 테이블 내용을 분석하거나 데이터베이스로 이동하거나 다른 형식으로 변환하고 싶을 것입니다.

이 가이드에서는 C#을 사용하여 OneNote에서 테이블의 텍스트를 추출하는 방법을 보여줍니다. 전체 테이블, 단일 행 또는 개별 셀에서 텍스트를 가져오는 방법을 간단하고 따라하기 쉬운 예제를 통해 배울 수 있습니다.

시작합시다.

OneNote에서 표에서 텍스트를 추출하는 이유는 무엇인가요?

개발자들은 종종 자동화, 보고 또는 다른 시스템과의 통합을 위해 OneNote 테이블에서 데이터를 추출해야 합니다. 다음은 몇 가지 실제 사례입니다:

  • 회의 요약을 구조화된 보고서로 내보내기.
  • 공유된 메모에서 분석을 위한 표 형식 데이터를 읽으세요.
  • 외부 시스템 또는 대시보드와 OneNote 테이블 동기화.

수동으로 데이터를 복사하는 대신, Aspose.Note for .NET은 이를 코드로 빠르고 일관되며 완전히 자동화된 방식으로 처리할 수 있도록 합니다.

C# OneNote 테이블에서 텍스트를 추출하는 라이브러리

Aspose.Note for .NET는 개발자가 .NET 애플리케이션에서 OneNote 파일을 생성, 읽기, 편집 및 변환할 수 있는 강력한 API입니다. 이는 페이지, 텍스트, 이미지, 개요 및 표와 같은 요소에 접근할 수 있는 풍부한 객체 모델을 지원합니다. 표 텍스트 추출을 위해, OneNote 파일을 나타내는 Document 클래스와 개발자가 테이블 요소를 쉽게 찾고 추출할 수 있도록 하는 GetChildNodes()와 같은 메서드를 제공합니다.

You can download it from the Aspose.Note for .NET releases page or install it using NuGet:

PM> Install-Package Aspose.Note

OneNote에서 표에서 텍스트 추출하는 방법

Aspose.Note는 다양한 수준에서 OneNote 문서에서 텍스트를 추출할 수 있게 해줍니다:

  • 전체 테이블
  • A specific row
  • 개별 세포

각 단계를 하나씩 살펴봅시다.

OneNote에서 테이블에서 텍스트 추출하는 방법: 샘플 테이블

샘플 테이블

OneNote 문서에서 C#을 사용하여 텍스트와 이미지를 추출하는 방법에 대해 자세히 알아보려면, OneNote 파일에서 콘텐츠 추출에 대한 우리의 자세한 가이드를 확인해 보십시오.

1. C#을 사용하여 OneNote의 표에서 텍스트 추출하기

Aspose.Note for .NET을 사용하여 OneNote 문서의 모든 사용 가능한 테이블에서 텍스트를 쉽게 추출할 수 있습니다. 테이블 노드에 접근하고, 그 내용을 읽고, 추출된 텍스트를 읽기 쉬운 형식으로 표시하는 과정을 살펴보겠습니다.

다음 단계를 따라 OneNote 문서에서 테이블의 텍스트를 추출하세요:

  1. .one 파일을 Document 클래스를 사용하여 로드합니다.
  2. GetChildNodes<Table>() 메서드를 사용하여 모든 테이블 노드를 가져옵니다.
  3. 각 테이블을 반복하고 그 텍스트 내용을 추출합니다.
  4. 콘솔에 결과를 출력하십시오.

다음 코드 예제는 OneNote 문서의 모든 테이블에서 텍스트를 추출하는 방법을 보여줍니다.

using Aspose.Note;

// 문서를 Aspose.Note에 로드하십시오.
Document document = new Document("SampleTable.one");

// 테이블 노드 목록 가져오기
IList<Table> nodes = document.GetChildNodes<Table>();

// Set table count
int tblCount = 0;

foreach (Table table in nodes)
{
    tblCount++;
    Console.WriteLine("Table # " + tblCount);

    // Retrieve text
    string text = string.Join(Environment.NewLine,
        table.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;

    // Print text on the output screen
    Console.WriteLine(text);
}

Output

Table # 1
cell_1.1
cell_1.2
cell_1.3
cell_2.1
cell_2.2
cell_2.3

2. OneNote 표에서 특정 행의 텍스트 추출하기

가끔은 전체 테이블 대신 특정 행에서 텍스트를 추출해야 할 때가 있습니다. 우리는 모든 테이블을 반복한 다음 각 행을 반복하여 독립적으로 텍스트를 추출할 것입니다. 이는 테이블 데이터를 행 단위로 분석하거나 처리해야 할 때 유용합니다.

텍스트를 행별로 추출하려면 아래 단계를 따르세요:

  1. Document 클래스를 사용하여 OneNote 파일을 로드합니다.
  2. 테이블 노드의 목록을 가져옵니다.
  3. 각 테이블을 반복한 다음, 각 행을 반복합니다.
  4. 각 행에서 텍스트를 추출하고 표시합니다.

다음 코드 예제는 C#을 사용하여 테이블에서 텍스트 행을 추출하는 방법을 보여줍니다:

using Aspose.Note;

// 문서를 Aspose.Note에 로드합니다.
Document document = new Document("SampleTable.one");

// 테이블 노드 목록 가져오기
IList<Table> nodes = document.GetChildNodes<Table>();

// 행 수 설정
int rowCount = 0;

foreach (Table table in nodes)
{
    // 테이블 행 반복하기
    foreach (TableRow row in table)
    {
        rowCount++;
        // Retrieve text
        string text = string.Join(Environment.NewLine,
            row.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;

        // Print text on the output screen
        Console.WriteLine($"Row #{rowCount}:");
        Console.WriteLine(text);
    }
}

Output

Row #1:
cell_1.1
cell_1.2
cell_1.3

Row #2:
cell_2.1
cell_2.2
cell_2.3

3. 테이블에서 특정 셀의 텍스트 추출하기

더 깊이 들어가 특정 셀에서 텍스트를 추출하고 싶다면, 그렇게 할 수 있습니다. 이를 위해 우리는 가장 작은 텍스트 단위, 즉 각 셀의 내용을 가져올 것입니다. 이는 데이터 추출에 대한 세밀한 제어가 필요할 때 완벽합니다. 추가 처리나 데이터 매핑을 위한 것입니다.

다음 단계를 따라 OneNote의 테이블에서 특정 셀의 텍스트를 추출하세요:

  1. Document 클래스 를 사용하여 OneNote 문서를 로드합니다.
  2. GetChildNodes<Table>()를 사용하여 테이블 노드를 검색합니다.
  3. 각 테이블과 그 행을 반복합니다.
  4. GetChildNodes<TableCell>()를 사용하여 셀 노드를 추출합니다.
  5. 각 셀에서 텍스트를 추출하여 표시하십시오.

다음 코드 예제는 C#를 사용하여 테이블의 행에서 셀 텍스트를 가져오는 방법을 보여줍니다:

using Aspose.Note;

// 문서를 Aspose.Note에 로드하세요.
Document document = new Document("SampleTable.one");

// 테이블 노드 목록 가져오기
IList<Table> nodes = document.GetChildNodes<Table>();

foreach (Table table in nodes)
{
    // 테이블 행을 반복하다
    foreach (TableRow row in table)
    {
        // TableCell 노드 목록 가져오기
        IList<TableCell> cellNodes = row.GetChildNodes<TableCell>();
        // 테이블 셀을 반복합니다.
        foreach (TableCell cell in cellNodes)
        {
            // Retrieve text
            string text = string.Join(Environment.NewLine,
                cell.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;
            // Print text on the output screen
            Console.WriteLine(text);
        }
    }
}

Output

cell_1.1

cell_1.2

cell_1.3

cell_2.1

cell_2.2

cell_2.3

Aspose.Note for .NET를 사용하여 텍스트 추출을 왜 사용할까요?

  • Microsoft OneNote를 사용하지 않고 완전히 오프라인에서 작동합니다.
  • Extracts text with formatting and structure preserved.
  • 모든 테이블 요소(헤더, 셀, 중첩 테이블)를 지원합니다.
  • 콘텐츠 필터링 및 쿼리를 위한 강력한 LINQ 지원 제공합니다.
  • 기존 .NET 애플리케이션과의 쉬운 통합.

분석 도구, 자동화 스크립트 또는 사용자 정의 메모 변환기를 구축하든, Aspose.Note는 여러분에게 필요한 유연성과 제어를 제공합니다.

당신은 Aspose License Page에서 무료 임시 라이센스를 받아 Aspose.Note for .NET을 한계 없이 체험할 수 있습니다. 신청하는 데 1분밖에 걸리지 않으며, 라이브러리의 모든 기능을 테스트할 수 있습니다.

무료 추가 리소스

결론

OneNote의 표에서 텍스트를 추출하는 것은 복잡할 필요가 없습니다. Aspose.Note for .NET을 사용하면 C# 코드 몇 줄만으로 전체 표, 특정 행 또는 개별 셀에서 텍스트를 쉽게 가져올 수 있습니다. API는 파싱, 노드 관리 및 콘텐츠 탐색을 처리하므로 필요한 방식으로 데이터를 사용하는 데 집중할 수 있습니다.

질문이 있거나 시작하는 데 도움이 필요하시면 무료 지원 포럼 를 방문하여 Aspose.Note 팀과 연결하세요.

자주 묻는 질문

Q: 내 OneNote 문서의 특정 테이블에서 텍스트를 추출할 수 있나요?

네, LINQ 또는 인덱스 기반 선택을 사용하여 테이블 노드를 필터링하여 특정 테이블을 추출할 수 있습니다.

Q: Aspose.Note for .NET을 사용하려면 Microsoft OneNote가 설치되어 있어야 하나요?

아니요, Aspose.Note for .NET은 독립적으로 작동하며 Microsoft OneNote나 기타 외부 소프트웨어를 요구하지 않습니다.

Q: Aspose.Note for .NET는 텍스트 추출 중에 테이블 구조를 유지합니까?

네, 이는 테이블의 논리적 구조를 유지하여 전체 테이블, 행 또는 개별 셀에서 콘텐츠를 추출하면서 순서를 유지할 수 있게 합니다.

Q: Can I extract formatted text from a OneNote table?

Aspose.Note는 주로 일반 텍스트를 추출합니다. 그러나 형식 세부 정보가 필요한 경우 풍부한 텍스트 객체에 액세스하고 처리할 수 있습니다.

Q: Aspose.Note for .NET은 .NET Core 및 .NET 6+와 호환되나요?

네, .NET Framework, .NET Core 및 최신 .NET 버전을 Windows, Linux 및 macOS에서 지원합니다.

See Also