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:
- OneNote Text and Image Extractor C# API
- Extrahera all text från OneNote-dokument
- Få text från specifika sidor i OneNote-dokument
- Extrahera bilder från OneNote-dokument
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:
- Först laddar du en OneNote-fil med klassen Document.
- Därefter anropar du metoden GetChildNodes med RichText som NodeType för att extrahera text.
- 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 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:
- Först laddar du en OneNote-fil med klassen Document.
- Anrop sedan metoden GetChildNodes med Page som NodeType för att extrahera sidor.
- Efter det får du en lista över textobjekt med metoden GetChildNodes med RichText som NodeType.
- 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:
- Först laddar du en OneNote-fil med klassen Document.
- Efter det får du en lista över bilder med metoden GetChildNodes med Image som NodeType.
- 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();
}
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.