GroupDocs.Parser provides the functionality to extract a text by an item of table of contents. This feature is supported for Word Processing, PDF, ePUB and CHM documents (for more details, see Supported Document Formats).
// Get the first item of table of contentsTocItemtocItem=parser.GetToc().First();// Print the text of the chapterusing(TextReaderreader=tocItem.ExtractText()){Console.WriteLine("----");Console.WriteLine(reader.ReadToEnd());}
This method returns a text from the chapter to which table of contents item refers (without sub-chapters). For example, “Heading 1.2” from the page
Here are the steps to extract a text by an item of table of contents:
Instantiate Parser object for the initial document;
Call GetToc method and obtain the collection of TocItem objects;
Check if collection isn’t null (table of contents extraction is supported for the document);
Iterate through the collection and extract a text by GetText method.
The following example shows how to extract a text by an item of table of contents:
// Create an instance of Parser classusing(Parserparser=newParser(Constants.SampleDocxWithToc)){// Get table of contentsIEnumerable<TocItem>tocItems=parser.GetToc();// Check if toc extraction is supportedif(tocItems==null){Console.WriteLine("Table of contents extraction isn't supported");}// Iterate over itemsforeach(TocItemtocItemintocItems){// Print the text of the chapterusing(TextReaderreader=tocItem.ExtractText()){Console.WriteLine("----");Console.WriteLine(reader.ReadToEnd());}}}
More resources
GitHub examples
You may easily run the code above and see the feature in action in our GitHub examples:
Along with full featured .NET library we provide simple, but powerful free Apps.
You are welcome to parse documents and extract data from PDF, DOC, DOCX, PPT, PPTX, XLS, XLSX, Emails and more with our free online Free Online Document Parser App.
Was this page helpful?
Any additional feedback you'd like to share with us?
Please tell us how we can improve this page.
Thank you for your feedback!
We value your opinion. Your feedback will help us improve our documentation.