예제 #1
0
        private void doBookDefinition(HtmlNode node, bool create = false)
        {
            if (create)
            {
                phase = TaoParsingPhase.BookDefinition;
                book  = new Book {
                    Chapters = new List <Chapter>(),
                };
                tao.Books.Add(book);
            }
            switch (node.Name)
            {
            case "h3":
                book.Code = node.InnerText.Clean();
                break;

            case "h2":
                book.Title = node.InnerText.Clean();
                break;

            case "h5":
                book.Quoted = node.InnerText.Clean();
                break;

            case "p":
                book.Quote = node.InnerText.Clean();
                break;

            case "h4":
                doChapterDefinition(node, true);
                break;
            }
        }
예제 #2
0
        private void doChapterDefinition(HtmlNode node, bool create = false)
        {
            if (create)
            {
                phase   = TaoParsingPhase.ChapterDefinition;
                chapter = new Chapter {
                    Paragraphs = new List <Paragraph>(),
                };
                book.Chapters.Add(chapter);
            }
            switch (node.Name)
            {
            case "h4":
                if (create)
                {
                    chapter.Code = node.InnerText.Clean();
                }
                else
                {
                    doChapterDefinition(node, true);
                }
                break;

            case "p":
            case "blockquote":
                paragraph = new Paragraph
                {
                    Text         = node.InnerText.Clean(node.Name == "blockquote"),
                    IsBlockquote = node.Name == "blockquote",
                };
                chapter.Paragraphs.Add(paragraph);
                break;

            case "h3":
                doBookDefinition(node, true);
                break;
            }
        }