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
- Extraire tout le texte des documents OneNote
- Obtenir du texte à partir de pages spécifiques de documents OneNote
- Extraire des images de documents OneNote
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 :
- Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
- Après cela, appelez la méthode GetChildNodes avec RichText comme NodeType pour extraire le texte.
- 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);
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 :
- Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
- Ensuite, appelez la méthode GetChildNodes avec Page comme NodeType pour extraire les pages.
- Après cela, obtenez une liste d’éléments de texte à l’aide de la méthode GetChildNodes avec RichText comme NodeType.
- 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 :
- Tout d’abord, chargez un fichier OneNote à l’aide de la classe Document.
- Après cela, obtenez une liste d’images en utilisant la méthode GetChildNodes avec Image comme NodeType.
- 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();
}
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.