Extraire du texte et des images de documents OneNote à l'aide de C#

Nous collectons, organisons et collaborons des notes et des idées dans des documents OneNote. C’est une sorte de bloc-notes numérique utilisé pour prendre des notes et les partager avec d’autres utilisateurs de OneNote. Dans certains cas, nous devrons peut-être extraire du texte ou des images de documents OneNote par programmation sans utiliser MS OneNote. Dans cet article, nous allons apprendre à extraire du texte et des images de documents OneNote à l’aide de C#.

Les sujets suivants seront traités dans cet article :

API C# d’extraction de texte et d’image OneNote

Pour extraire le texte et les images du document OneNote, nous utiliserons l’API Aspose.Note for .NET. Il s’agit d’une API de manipulation de documents OneNote riche en fonctionnalités qui vous permet de créer, de lire et de convertir des documents OneNote par programme. Veuillez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Note

Extraire tout le texte des documents OneNote

Nous pouvons facilement extraire tout le texte du document OneNote en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
  2. Après cela, appelez la méthode GetChildNodes avec RichText comme NodeType pour extraire le texte.
  3. Enfin, affichez le texte extrait.

L’exemple de code suivant montre comment extraire tout le texte d’un fichier OneNote à l’aide de C#.

// Cet exemple de code montre comment extraire tout le texte d'un document OneNote.
// Chargez le document dans Aspose.Note.
Document oneFile = new Document(@"C:\Files\Note\Aspose.one");

// Récupérer du texte
string text = string.Join(Environment.NewLine, oneFile.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;

// Texte d'impression
Console.WriteLine(text);
Extrayez tout le texte des documents OneNote.

Extrayez tout le texte des documents OneNote.

Obtenir du texte à partir de pages spécifiques de documents OneNote

Nous pouvons extraire du texte de pages spécifiques du document OneNote en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
  2. Ensuite, appelez la méthode GetChildNodes avec Page comme NodeType pour extraire les pages.
  3. Après cela, obtenez une liste d’éléments de texte à l’aide de la méthode GetChildNodes avec RichText comme NodeType.
  4. Enfin, affichez le texte extrait.

L’exemple de code suivant montre comment extraire du texte d’une page spécifique d’un fichier OneNote à l’aide de C#.

// Cet exemple de code montre comment obtenir du texte à partir d'une page spécifique.
// Obtenir la première page de la liste des nœuds de page
var page = oneFile.GetChildNodes<Page>().FirstOrDefault();

if (page != null)
{
    // Récupérer du texte
    IList<RichText> textNodes = page.GetChildNodes<RichText>();

    foreach (RichText t in textNodes)
    {
        // Texte d'impression
        Console.WriteLine(t.Text);
    }
}

Extraire des images de documents OneNote

Nous pouvons également extraire des images du document OneNote en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
  2. Après cela, obtenez une liste d’images en utilisant la méthode GetChildNodes avec Image comme NodeType.
  3. Enfin, affichez les propriétés de l’image et enregistrez-les sur le disque local.

L’exemple de code suivant montre comment extraire des images d’un fichier OneNote à l’aide de C#.

// Cet exemple de code montre comment extraire toutes les images.
// Obtenir tous les nœuds d'image
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))
        {
            // Enregistrer les octets de l'image dans un fichier
            bitMap.Save(String.Format(@"C:\Files\Note\" + "{0}", Path.GetFileName(image.FileName)));
        }
    }

    Console.WriteLine("Image saved!");
    Console.WriteLine();
}
Extraire des images de documents OneNote.

Extraire des images de documents OneNote.

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer la bibliothèque sans limitations d’évaluation.

Conclusion

Dans cet article, nous avons appris à extraire du texte du document OneNote ou de pages spécifiques du document. Nous avons également vu comment extraire des images de documents OneNote par programmation. En outre, vous pouvez en savoir plus sur Aspose.Note for .NET en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également