Class DocumentVisitor

Class DocumentVisitor

名称: Aspose.Note 集合: Aspose.Note.dll (25.4.0)

抽象的类,以便通过指定的节点上根的地下树进行异化。

public abstract class DocumentVisitor
   {
      public abstract void Visit(Document document);
      public void Visit(Table table)
      {
      }
      public void Visit(Cell cell)
      {
      }
      public void Visit(Row row)
      {
      }
      public void Visit(Section section)
      {
      }
      public void Visit(Paragraph paragraph)
      {
      }
      public void Visit(Run run)
      {
      }
   }

Inheritance

object DocumentVisitor

继承人

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Examples

显示如何使用访问者访问文档的内容。

public static void Run()
{
    string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
    Document doc = new Document(dataDir + "Aspose.one");
    MyOneNoteToTxtWriter myConverter = new MyOneNoteToTxtWriter();
    doc.Accept(myConverter);
    Console.WriteLine(myConverter.GetText());
    Console.WriteLine(myConverter.NodeCount);
}
public class MyOneNoteToTxtWriter : DocumentVisitor
{
    public MyOneNoteToTxtWriter()
    {
        nodecount = 0;
        mIsSkipText = false;
        mBuilder = new StringBuilder();
    }
    public string GetText()
    {
        return mBuilder.ToString();
    }
    private void AppendText(string text)
    {
        if (!mIsSkipText)
        {
            mBuilder.AppendLine(text);
        }
    }
    public override void VisitRichTextStart(RichText run)
    {
        ++nodecount;
        AppendText(run.Text);
    }
    public override void VisitDocumentStart(Document document)
    {
        ++nodecount;
    }
    public override void VisitPageStart(Page page)
    {
        ++nodecount;
        AppendText($"*** Page '{page.Title?.TitleText?.Text ?? "(no title)"}' ***");
    }
    public override void VisitPageEnd(Page page)
    {
        AppendText(string.Empty);
    }
    public override void VisitTitleStart(Title title)
    {
        ++nodecount;
    }
    public override void VisitImageStart(Image image)
    {
        ++nodecount;
    }
    public override void VisitOutlineGroupStart(OutlineGroup outlineGroup)
    {
        ++nodecount;
    }
    public override void VisitOutlineStart(Outline outline)
    {
        ++nodecount;
    }
    public override void VisitOutlineElementStart(OutlineElement outlineElement)
    {
        ++nodecount;
    }
    public Int32 NodeCount
    {
        get { return this.nodecount; }
    }
    private readonly StringBuilder mBuilder;
    private bool mIsSkipText;
    private int nodecount;
}

Constructors

文档( )

protected DocumentVisitor()
   {
   }

Methods

附加文件(AttachedFile)

请访问 Aspose.Note.AttachedFile 节点。

public virtual void VisitAttachedFileEnd(Aspose.Words.AttachedFile attachedFile)
   {
   }

Parameters

attachedFile AttachedFile

此分類上一篇: Aspose.Note.AttachedFile node

参观AtachedFileStart(附属文件)

开始访问 Aspose.Note.AttachedFile 节点。

public virtual void VisitAttachedFileStart(Aspose.Words.AttachedFile attachedFile)
   {
   }

Parameters

attachedFile AttachedFile

此分類上一篇: Aspose.Note.AttachedFile node

VisitDocumentEnd(文档)

请访问 Aspose.Note.Document 节点。

public virtual void VisitDocumentEnd(Aspose.Words.Document document)
   {
   }

Parameters

document Document

Aspose.Note.文件节点。

VisitDocumentStart(文档)

开始访问 Aspose.Note.文件节点。

public override void VisitDocumentStart(Document document)
   {
   }

Parameters

document Document

Aspose.Note.文件节点。

VisitImageEnd(图像)

请访问 Aspose.Note.图像节点。

public virtual void VisitImageEnd(Aspose.Words.Image image)
   {
   }

Parameters

image Image

Aspose.Note.图像节点。

VisitImageStart(图像)

开始参观 Aspose.Note.图像节点。

public virtual void VisitImageStart(Aspose.Words.CheckBox image)
   {
   }

Parameters

image Image

Aspose.Note.图像节点。

参观InkDrawingEnd(注)

请访问 Aspose.Note.InkDrawing 节点。

public virtual void VisitInkDrawingEnd(InkDrawing inkDrawing)
   {
   }

Parameters

inkDrawing InkDrawing

Aspose.Note.InkDrawing 节点。

参观InkDrawingStart(启动)

开始参观 Aspose.Note.InkDrawing 节点。

public virtual void VisitInkDrawingStart(Aspose.Words.CheckBox inkDrawing)
   {
   }

Parameters

inkDrawing InkDrawing

Aspose.Note.InkDrawing 节点。

主条目(InkParagraph)

请访问 Aspose.Note.InkParagraph 节点。

public virtual void VisitInkParagraphEnd(InkParagraph inkParagraph)
   {
   }

Parameters

inkParagraph InkParagraph

Aspose.Note.InkParagraph 节点。

首頁(InkParagraph)

开始参观 Aspose.Note.InkParagraph 节点。

public virtual void VisitInkParagraphStart(InkParagraph inkParagraph)
   {
   }

Parameters

inkParagraph InkParagraph

Aspose.Note.InkParagraph 节点。

参观InkWordEnd(英格兰)

请访问 Aspose.Note.InkWord 节点。

public virtual void VisitInkWordEnd(InkWord inkWord)
   {
   }

Parameters

inkWord InkWord

Aspose.Note.InkWord 节点。

首頁 〉外文書(InkWord)

开始访问 Aspose.Note.InkWord 节点。

public virtual void VisitInkWordStart(InkWord inkWord)
   {
   }

Parameters

inkWord InkWord

Aspose.Note.InkWord 节点。

参观(Loop)

请访问 Aspose.Note.Loop 节点。

public virtual void VisitLoopEnd(Loop loop)
   {
   }

Parameters

loop Loop

Aspose.Note.Loop 节点。

首頁 〉外文書 (Loop)

开始参观 Aspose.Note.Loop 节点。

public virtual void VisitLoopStart(Loop loop)
   {
   }

Parameters

loop Loop

Aspose.Note.Loop 节点。

VisitOutlineElementEnd(外线元素)

请访问 Aspose.Note.OutlineElement 节点。

public virtual void VisitOutlineElementEnd(OutlineElement outlineElement)
   {
   }

Parameters

outlineElement OutlineElement

Aspose.Note.OutlineElement 节点。

VisitOutlineElementStart(外线元素)

开始参观 Aspose.Note.OutlineElement 节点。

public virtual void VisitOutlineElementStart(Aspose.Words.OutlineElement outlineElement)
   {
   }

Parameters

outlineElement OutlineElement

Aspose.Note.OutlineElement 节点。

外线(Outline)

请访问 Aspose.Note.Outline 节点。

public virtual void VisitOutlineEnd(Aspose.Words.Outline outline)
   {
   }

Parameters

outline Outline

此分類上一篇: Aspose.Note.Outline Node

VisitOutlineGroupEnd(外线集团)

请访问 Aspose.Note.OutlineGroup 节点。

public virtual void VisitOutlineGroupEnd(Aspose.Words.OutlineGroup outlineGroup)
   {
   }

Parameters

outlineGroup OutlineGroup

是 Aspose.Note.OutlineGroup 节点。

VisitOutlineGroupStart(外线组)

开始访问 Aspose.Note.OutlineGroup 节点。

public virtual void VisitOutlineGroupStart(Aspose.Words.OutlineGroup outlineGroup)
   {
   }

Parameters

outlineGroup OutlineGroup

是 Aspose.Note.OutlineGroup 节点。

VisitOutlineStart(外线)

开始参观 Aspose.Note.Outline 节点。

public virtual void VisitOutlineStart(Aspose.Words.CheckBox outline)
   {
   }

Parameters

outline Outline

此分類上一篇: Aspose.Note.Outline Node

VisitPageEnd(页面)

请访问 Aspose.Note.Page 节点。

public override void VisitPageEnd(Aspose.Words.DocumentObject o, Aspose.Words.Page page)
   {
   }

Parameters

page Page

是 Aspose.Note. 页面节点。

VisitPageStart(页面)

开始参观 Aspose.Note.页面节点。

public virtual void VisitPageStart(Page page)
   {
   }

Parameters

page Page

是 Aspose.Note. 页面节点。

主条目(RichText)

请访问 Aspose.Note.RichText 节点。

public virtual void VisitRichTextEnd(Aspose.Words.RichText richText)
   {
   }

Parameters

richText RichText

Aspose.Note.RichText 节点。

首頁 〉外文書(RichText)

开始访问 Aspose.Note.RichText 节点。

public virtual void VisitRichTextStart(Aspose.Words.RichText richText)
   {
   }

Parameters

richText RichText

Aspose.Note.RichText 节点。

参观TableCellEnd(图表)

请访问 Aspose.Note.TableCell 节点。

public virtual void VisitTableCellEnd(TableCell tableCell)
   {
   }

Parameters

tableCell TableCell

Aspose.Note.TableCell 节点。

参观TableCellStart(图表)

开始访问 Aspose.Note.TableCell 节点。

public virtual void VisitTableCellStart(TableCell tableCell)
   {
   }

Parameters

tableCell TableCell

Aspose.Note.TableCell 节点。

参观表(Table)

请访问 Aspose.Note.Table 节点。

public virtual void VisitTableEnd(Table table)
   {
   }

Parameters

table Table

Aspose.Note.Table 节点。

参观TableRowEnd(图)

请访问 Aspose.Note.TableRow 节点。

public virtual void VisitTableRowEnd(TableRow tableRow)
   {
   }

Parameters

tableRow TableRow

Aspose.Note.TableRow 节点。

参观TableRowStart(图)

开始参观 Aspose.Note.TableRow 节点。

public virtual void VisitTableRowStart(TableRow tableRow)
   {
   }

Parameters

tableRow TableRow

Aspose.Note.TableRow 节点。

参观TableStart(表)

开始参观 Aspose.Note.表节点。

public virtual void VisitTableStart(Table table)
   {
   }

Parameters

table Table

Aspose.Note.Table 节点。

标题(Title)

请访问 Aspose.Note.Title 节点。

public virtual void VisitTitleEnd(Aspose.Words.Title title)
   {
   }

Parameters

title Title

名称:Note.Title Node

首頁 〉外文書(Title)

开始参观 Aspose.Note.标题节点。

public virtual void VisitTitleStart(Title title)
   {
   }

Parameters

title Title

名称:Note.Title Node

 中文