VisitAbsolutePositionTab
Содержание
[
Скрывать
]DocumentVisitor.VisitAbsolutePositionTab method
Вызывается, когдаAbsolutePositionTab
в документе встречается узел.
public virtual VisitorAction VisitAbsolutePositionTab(AbsolutePositionTab tab)
Параметр | Тип | Описание |
---|---|---|
tab | AbsolutePositionTab | Объект, который посещается. |
Возвращаемое значение
АVisitorAction
значение, указывающее, как продолжить перечисление.
Примеры
Показывает, как обрабатывать символы табуляции абсолютного положения с помощью посетителя документа.
public void DocumentToTxt()
{
Document doc = new Document(MyDir + "Absolute position tab.docx");
// Извлекаем текстовое содержимое нашего документа, приняв этого пользовательского посетителя документа.
DocTextExtractor myDocTextExtractor = new DocTextExtractor();
doc.FirstSection.Body.Accept(myDocTextExtractor);
// Абсолютная позиция табуляции, не имеющая эквивалента в строковой форме, была явно преобразована в символ табуляции.
Assert.AreEqual("Before AbsolutePositionTab\tAfter AbsolutePositionTab", myDocTextExtractor.GetText());
// AbsolutePositionTab также может принимать DocumentVisitor сам по себе.
AbsolutePositionTab absPositionTab = (AbsolutePositionTab)doc.FirstSection.Body.FirstParagraph.GetChild(NodeType.SpecialChar, 0, true);
myDocTextExtractor = new DocTextExtractor();
absPositionTab.Accept(myDocTextExtractor);
Assert.AreEqual("\t", myDocTextExtractor.GetText());
}
/// <summary>
/// Собирает текстовое содержимое всех прогонов в посещенном документе. Заменяет все абсолютные символы табуляции обычными табуляциями.
/// </summary>
public class DocTextExtractor : DocumentVisitor
{
public DocTextExtractor()
{
mBuilder = new StringBuilder();
}
/// <summary>
/// Вызывается, когда в документе встречается узел Run.
/// </summary>
public override VisitorAction VisitRun(Run run)
{
AppendText(run.Text);
return VisitorAction.Continue;
}
/// <summary>
/// Вызывается, когда в документе встречается узел AbsolutePositionTab.
/// </summary>
public override VisitorAction VisitAbsolutePositionTab(AbsolutePositionTab tab)
{
mBuilder.Append("\t");
return VisitorAction.Continue;
}
/// <summary>
/// Добавляет текст в текущий вывод. Учитывает включенный/отключенный выходной флаг.
/// </summary>
private void AppendText(string text)
{
mBuilder.Append(text);
}
/// <summary>
/// Простой текст документа, накопленного посетителем.
/// </summary>
public string GetText()
{
return mBuilder.ToString();
}
private readonly StringBuilder mBuilder;
}
Смотрите также
- enum VisitorAction
- class AbsolutePositionTab
- class DocumentVisitor
- пространство имен Aspose.Words
- сборка Aspose.Words