VisitAbsolutePositionTab
Inhalt
[
Ausblenden
]DocumentVisitor.VisitAbsolutePositionTab method
Wird aufgerufen, wenn aAbsolutePositionTab
Knoten wird im Dokument gefunden.
public virtual VisitorAction VisitAbsolutePositionTab(AbsolutePositionTab tab)
Parameter | Typ | Beschreibung |
---|---|---|
tab | AbsolutePositionTab | Das Objekt, das besucht wird. |
Rückgabewert
AVisitorAction
Wert, der angibt, wie die Enumeration fortgesetzt werden soll.
Beispiele
Zeigt, wie Tabulatorzeichen für absolute Positionen mit einem Dokumentbesucher verarbeitet werden.
public void DocumentToTxt()
{
Document doc = new Document(MyDir + "Absolute position tab.docx");
// Extrahieren Sie den Textinhalt unseres Dokuments, indem Sie diesen benutzerdefinierten Dokumentbesucher akzeptieren.
DocTextExtractor myDocTextExtractor = new DocTextExtractor();
doc.FirstSection.Body.Accept(myDocTextExtractor);
// Der Tabulator für die absolute Position, für den es in Stringform keine Entsprechung gibt, wurde explizit in ein Tabulatorzeichen umgewandelt.
Assert.AreEqual("Before AbsolutePositionTab\tAfter AbsolutePositionTab", myDocTextExtractor.GetText());
// Ein AbsolutePositionTab kann auch einen DocumentVisitor alleine akzeptieren.
AbsolutePositionTab absPositionTab = (AbsolutePositionTab)doc.FirstSection.Body.FirstParagraph.GetChild(NodeType.SpecialChar, 0, true);
myDocTextExtractor = new DocTextExtractor();
absPositionTab.Accept(myDocTextExtractor);
Assert.AreEqual("\t", myDocTextExtractor.GetText());
}
/// <summary>
/// Sammelt den Textinhalt aller Läufe im besuchten Dokument. Ersetzt alle absoluten Tabulatorzeichen durch normale Tabulatoren.
/// </summary>
public class DocTextExtractor : DocumentVisitor
{
public DocTextExtractor()
{
mBuilder = new StringBuilder();
}
/// <summary>
/// Wird aufgerufen, wenn im Dokument ein Run-Knoten gefunden wird.
/// </summary>
public override VisitorAction VisitRun(Run run)
{
AppendText(run.Text);
return VisitorAction.Continue;
}
/// <summary>
/// Wird aufgerufen, wenn im Dokument ein AbsolutePositionTab-Knoten gefunden wird.
/// </summary>
public override VisitorAction VisitAbsolutePositionTab(AbsolutePositionTab tab)
{
mBuilder.Append("\t");
return VisitorAction.Continue;
}
/// <summary>
/// Fügt Text zur aktuellen Ausgabe hinzu. Berücksichtigt das aktivierte/deaktivierte Ausgabeflag.
/// </summary>
private void AppendText(string text)
{
mBuilder.Append(text);
}
/// <summary>
/// Nur-Text des Dokuments, das vom Besucher gesammelt wurde.
/// </summary>
public string GetText()
{
return mBuilder.ToString();
}
private readonly StringBuilder mBuilder;
}
Siehe auch
- enum VisitorAction
- class AbsolutePositionTab
- class DocumentVisitor
- namensraum Aspose.Words
- Montage Aspose.Words