Estrai testo e immagini dai documenti di OneNote usando C#

Raccogliamo, organizziamo e collaboriamo con note e idee nei documenti di OneNote. È una sorta di taccuino digitale utilizzato per prendere appunti e condividere con altri utenti di OneNote. In alcuni casi, potrebbe essere necessario estrarre testo o immagini dai documenti di OneNote a livello di codice senza utilizzare MS OneNote. In questo articolo impareremo come estrarre testo e immagini dai documenti di OneNote usando C#.

In questo articolo verranno trattati i seguenti argomenti:

API C# per l’estrazione di testo e immagini di OneNote

Per estrarre testo e immagini dal documento OneNote, utilizzeremo l’API Aspose.Note for .NET. È un’API di manipolazione dei documenti di OneNote ricca di funzionalità che consente di creare, leggere e convertire i documenti di OneNote a livello di codice. Si prega di scaricare la DLL dell’API o installarla utilizzando NuGet.

PM> Install-Package Aspose.Note

Estrai tutto il testo dai documenti di OneNote

Possiamo facilmente estrarre tutto il testo dal documento OneNote seguendo i passaggi indicati di seguito:

  1. Innanzitutto, carica un file OneNote utilizzando la classe Document.
  2. Successivamente, chiama il metodo GetChildNodes con RichText come NodeType per estrarre il testo.
  3. Infine, mostra il testo estratto.

L’esempio di codice seguente mostra come estrarre tutto il testo da un file di OneNote usando C#.

// Questo esempio di codice mostra come estrarre tutto il testo dal documento di OneNote.
// Carica il documento in Aspose.Note.
Document oneFile = new Document(@"C:\Files\Note\Aspose.one");

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

// Stampa testo
Console.WriteLine(text);
Estrai tutto il testo dai documenti di OneNote.

Estrai tutto il testo dai documenti di OneNote.

Ottieni testo da pagine specifiche di documenti OneNote

Possiamo estrarre il testo da pagine specifiche del documento OneNote seguendo i passaggi indicati di seguito:

  1. Innanzitutto, carica un file OneNote utilizzando la classe Document.
  2. Quindi, chiama il metodo GetChildNodes con Page come NodeType per estrarre le pagine.
  3. Successivamente, ottieni un elenco di elementi di testo utilizzando il metodo GetChildNodes con RichText come NodeType.
  4. Infine, mostra il testo estratto.

L’esempio di codice seguente mostra come estrarre il testo da una pagina specifica di un file di OneNote usando C#.

// Questo esempio di codice mostra come ottenere testo da una pagina specifica.
// Ottieni la prima pagina dall'elenco dei nodi della pagina
var page = oneFile.GetChildNodes<Page>().FirstOrDefault();

if (page != null)
{
    // Recupera testo
    IList<RichText> textNodes = page.GetChildNodes<RichText>();

    foreach (RichText t in textNodes)
    {
        // Stampa testo
        Console.WriteLine(t.Text);
    }
}

Estrai immagini dai documenti di OneNote

Possiamo anche estrarre immagini dal documento OneNote seguendo i passaggi indicati di seguito:

  1. Innanzitutto, carica un file OneNote utilizzando la classe Document.
  2. Successivamente, ottieni un elenco di immagini utilizzando il metodo GetChildNodes con Image come NodeType.
  3. Infine, mostra le proprietà dell’immagine e salva su disco locale.

L’esempio di codice seguente mostra come estrarre immagini da un file di OneNote usando C#.

// Questo esempio di codice mostra come estrarre tutte le immagini.
// Ottieni tutti i nodi Immagine
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))
        {
            // Salva i byte di immagine in un file
            bitMap.Save(String.Format(@"C:\Files\Note\" + "{0}", Path.GetFileName(image.FileName)));
        }
    }

    Console.WriteLine("Image saved!");
    Console.WriteLine();
}
Estrai immagini dai documenti di OneNote.

Estrai immagini dai documenti di OneNote.

Ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita per provare la libreria senza limitazioni di valutazione.

Conclusione

In questo articolo abbiamo imparato come estrarre del testo dal documento di OneNote o da pagine specifiche del documento. Abbiamo anche visto come estrarre le immagini dai documenti di OneNote a livello di codice. Inoltre, puoi saperne di più su Aspose.Note per l’API .NET usando la documentazione. In caso di ambiguità, non esitare a contattarci sul forum.

Guarda anche