Extrahera text och bilder från OneNote i C#

Vi samlar in, organiserar och samarbetar anteckningar och idéer i OneNote-dokument. Det är en sorts digital anteckningsbok som används för att göra anteckningar och dela med andra OneNote-användare. I vissa fall kan vi behöva extrahera text eller bilder från OneNote-dokument programmatiskt utan att använda MS OneNote. I den här artikeln kommer vi att lära oss hur man extraherar text och bilder från OneNote i C#.

Följande ämnen ska behandlas i den här artikeln:

C# API för att extrahera text och bilder från OneNote

För att extrahera text och bilder från OneNote-dokumentet kommer vi att använda API:et Aspose.Note for .NET. Det är ett funktionsrikt OneNote-dokumentmanipulerings-API som låter dig skapa, läsa och konvertera OneNote-dokument programmatiskt. Vänligen antingen ladda ner API:ts DLL eller installera den med NuGet.

PM> Install-Package Aspose.Note

Extrahera all text från OneNote i C#

Vi kan enkelt extrahera all text från OneNote-dokumentet genom att följa stegen nedan:

  1. Först laddar du en OneNote-fil med klassen Document.
  2. Därefter anropar du metoden GetChildNodes med RichText som NodeType för att extrahera text.
  3. Till sist, visa den extraherade texten.

Följande kodexempel visar hur man extraherar all text från en OneNote-fil med C#.

// Detta kodexempel visar hur man extraherar all text från OneNote-dokument.
// Ladda dokumentet i Aspose.Note.
Document oneFile = new Document(@"C:\Files\Note\Aspose.one");

// Hämta text
string text = string.Join(Environment.NewLine, oneFile.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;

// Skriv ut text
Console.WriteLine(text);
Extrahera all text från OneNote-dokument.

Extrahera all text från OneNote-dokument.

Extrahera text från specifika sidor i OneNote i C#

Vi kan extrahera text från specifika sidor i OneNote-dokumentet genom att följa stegen nedan:

  1. Först laddar du en OneNote-fil med klassen Document.
  2. Anrop sedan metoden GetChildNodes med Page som NodeType för att extrahera sidor.
  3. Efter det får du en lista över textobjekt med metoden GetChildNodes med RichText som NodeType.
  4. Till sist, visa den extraherade texten.

Följande kodexempel visar hur man extraherar text från en specifik sida i en OneNote-fil med C#.

// Detta kodexempel visar hur man hämtar text från en specifik sida.
// Hämta första sidan från listan över sidnoder
var page = oneFile.GetChildNodes<Page>().FirstOrDefault();

if (page != null)
{
    // Hämta text
    IList<RichText> textNodes = page.GetChildNodes<RichText>();

    foreach (RichText t in textNodes)
    {
        // Skriv ut text
        Console.WriteLine(t.Text);
    }
}

Extrahera bilder från OneNote i C#

Vi kan också extrahera bilder från OneNote-dokumentet genom att följa stegen nedan:

  1. Först laddar du en OneNote-fil med klassen Document.
  2. Efter det får du en lista över bilder med metoden GetChildNodes med Image som NodeType.
  3. Slutligen, visa bildens egenskaper och spara på lokal disk.

Följande kodexempel visar hur man extraherar bilder från en OneNote-fil med C#.

// Detta kodexempel visar hur man extraherar alla bilder.
// Hämta alla bildnoder
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))
        {
            // Spara bildbytes till en fil
            bitMap.Save(String.Format(@"C:\Files\Note\" + "{0}", Path.GetFileName(image.FileName)));
        }
    }

    Console.WriteLine("Image saved!");
    Console.WriteLine();
}
Extrahera bilder från OneNote-dokument.

Extrahera bilder från OneNote-dokument.

Skaffa en gratis licens

Du kan få en gratis tillfällig licens för att prova biblioteket utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har vi lärt oss hur man extraherar text från OneNote-dokumentet eller från specifika sidor i dokumentet. Vi har också sett hur man extraherar bilder från OneNote-dokument programmatiskt. Dessutom kan du lära dig mer om Aspose.Note för .NET API med hjälp av dokumentationen. I händelse av oklarheter, var god kontakta oss på forum.

Se även