OneNote 문서에서 메모와 아이디어를 수집, 구성 및 공동 작업합니다. 메모를 작성하고 다른 OneNote 사용자와 공유하는 데 사용되는 일종의 디지털 전자 필기장입니다. 어떤 경우에는 MS OneNote를 사용하지 않고 프로그래밍 방식으로 OneNote 문서에서 텍스트나 이미지를 추출해야 할 수 있습니다. 이 기사에서는 C#을 사용하여 OneNote 문서에서 텍스트와 이미지를 추출하는 방법을 배웁니다.
이 기사에서는 다음 주제를 다룹니다.
OneNote 텍스트 및 이미지 추출기 C# API
OneNote 문서에서 텍스트와 이미지를 추출하기 위해 Aspose.Note for .NET API를 사용할 것입니다. 프로그래밍 방식으로 OneNote 문서를 만들고, 읽고, 변환할 수 있는 기능이 풍부한 OneNote 문서 조작 API입니다. API의 DLL을 다운로드하거나 NuGet을 사용하여 설치하십시오.
PM> Install-Package Aspose.Note
OneNote 문서에서 모든 텍스트 추출
아래 단계에 따라 OneNote 문서에서 모든 텍스트를 쉽게 추출할 수 있습니다.
- 먼저 Document 클래스를 사용하여 OneNote 파일을 로드합니다.
- 그런 다음 RichText를 NodeType로 사용하여 GetChildNodes 메서드를 호출하여 텍스트를 추출합니다.
- 마지막으로 추출된 텍스트를 표시합니다.
다음 코드 샘플은 C#을 사용하여 OneNote 파일에서 모든 텍스트를 추출하는 방법을 보여줍니다.
// 이 코드 예제는 OneNote 문서에서 모든 텍스트를 추출하는 방법을 보여줍니다.
// 문서를 Aspose.Note에 로드합니다.
Document oneFile = new Document(@"C:\Files\Note\Aspose.one");
// 텍스트 검색
string text = string.Join(Environment.NewLine, oneFile.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;
// 텍스트 인쇄
Console.WriteLine(text);
OneNote 문서의 특정 페이지에서 텍스트 가져오기
아래 단계에 따라 OneNote 문서의 특정 페이지에서 텍스트를 추출할 수 있습니다.
- 먼저 Document 클래스를 사용하여 OneNote 파일을 로드합니다.
- 다음으로 Page을 NodeType로 지정하여 GetChildNodes 메서드를 호출하여 페이지를 추출합니다.
- 그런 다음 RichText가 NodeType인 GetChildNodes 메서드를 사용하여 텍스트 항목 목록을 가져옵니다.
- 마지막으로 추출된 텍스트를 표시합니다.
다음 코드 샘플은 C#을 사용하여 OneNote 파일의 특정 페이지에서 텍스트를 추출하는 방법을 보여줍니다.
// 이 코드 예제는 특정 페이지에서 텍스트를 가져오는 방법을 보여줍니다.
// 페이지 노드 목록에서 첫 번째 페이지 가져오기
var page = oneFile.GetChildNodes<Page>().FirstOrDefault();
if (page != null)
{
// 텍스트 검색
IList<RichText> textNodes = page.GetChildNodes<RichText>();
foreach (RichText t in textNodes)
{
// 텍스트 인쇄
Console.WriteLine(t.Text);
}
}
OneNote 문서에서 이미지 추출
아래 단계에 따라 OneNote 문서에서 이미지를 추출할 수도 있습니다.
- 먼저 Document 클래스를 사용하여 OneNote 파일을 로드합니다.
- 그런 다음 Image을 NodeType로 하여 GetChildNodes 메서드를 사용하여 이미지 목록을 가져옵니다.
- 마지막으로 이미지 속성을 표시하고 로컬 디스크에 저장합니다.
다음 코드 샘플은 C#을 사용하여 OneNote 파일에서 이미지를 추출하는 방법을 보여줍니다.
// 이 코드 예제는 모든 이미지를 추출하는 방법을 보여줍니다.
// 모든 이미지 노드 가져오기
IList<Aspose.Note.Image> nodes = oneFile.GetChildNodes<Aspose.Note.Image>();
foreach (Aspose.Note.Image image in nodes)
{
Console.WriteLine("Width: {0}", image.Width);
Console.WriteLine("Height: {0}", image.Height);
Console.WriteLine("OriginalWidth: {0}", image.OriginalWidth);
Console.WriteLine("OriginalHeight: {0}", image.OriginalHeight);
Console.WriteLine("FileName: {0}", image.FileName);
Console.WriteLine("LastModifiedTime: {0}", image.LastModifiedTime);
using (MemoryStream stream = new MemoryStream(image.Bytes))
{
using (Bitmap bitMap = new Bitmap(stream))
{
// 파일에 이미지 바이트 저장
bitMap.Save(String.Format(@"C:\Files\Note\" + "{0}", Path.GetFileName(image.FileName)));
}
}
Console.WriteLine("Image saved!");
Console.WriteLine();
}
무료 라이선스 받기
평가 제한 없이 라이브러리를 사용해 보려면 무료 임시 라이센스를 얻으십시오.
결론
이 문서에서는 OneNote 문서 또는 문서의 특정 페이지에서 텍스트를 추출하는 방법을 배웠습니다. 프로그래밍 방식으로 OneNote 문서에서 이미지를 추출하는 방법도 살펴보았습니다. 또한 문서를 사용하여 .NET API용 Aspose.Note에 대해 자세히 알아볼 수 있습니다. 모호한 부분이 있는 경우 포럼을 통해 언제든지 문의해 주십시오.