Freigeben über


Arbeiten mit Absätzen

In diesem Thema wird die Open XML SDK-Klasse Paragraph und ihre Beziehung zum WordprocessingML-Schema des Open XML-Dateiformats erläutert.


Absätze in WordprocessingML

Der folgende Text aus der Spezifikation ISO/IEC 29500 enthält eine Einführung in das Open XML WordprocessingML-Element, das zum Darstellen eines Absatzes in einem WordprocessingML-Dokument dient.

Die grundlegendste Einheit von Inhalten auf Blockebene in einem WordprocessingML-Dokument, Absätze werden mithilfe des <p> -Elements gespeichert. Ein Absatz bestimmt eine erkennbare Aufteilung des Inhalts, der in einer neuen Zeile beginnt. Ein Absatz kann drei Informationen enthalten: optionale Absatzeigenschaften, Inlineinhalte (zumeist Läufe) und eine Gruppe optionaler Überarbeitungs-IDs, die zum Vergleichen des Inhalts zweier Dokumente dienen.

Die Eigenschaften eines Absatzes werden über das <pPr> -Element angegeben. Beispiele für Absatzeigenschaften sind Ausrichtung, Rand, Deaktivieren der Silbentrennung, Einrückung, Zeilenabstand, Schattierung, Textrichtung und Absatzkontrolle.

© ISO/IEC 29500: 2016

In der folgenden Tabelle sind die allgemeinen Open XML SDK-Klassen aufgeführt, die beim Arbeiten mit Absätzen verwendet werden.

WordprocessingML-Element Open XML SDK-Klasse
p Paragraph
pPr ParagraphProperties
r Run
t Text

Paragraph-Klasse

Die Open XML SDK-Klasse Paragraph stellt das Absatzelement <p> dar, das wie oben beschrieben im Open XML-Dateiformatschema für WordprocessingML-Dokumente definiert ist. Verwenden Sie das Paragraph-Objekt , um einzelne <p> Elemente in einem WordprocessingML-Dokument zu bearbeiten.

ParagraphProperties-Klasse

In WordprocessingML werden die Eigenschaften eines Absatzes über das Absatzeigenschaftenelement <pPr> angegeben. Beispiele für Absatzeigenschaften sind Ausrichtung, Rand, Deaktivieren der Silbentrennung, Einrückung, Zeilenabstand, Schattierung, Textrichtung und Absatzkontrolle. Die OXML SDK-Klasse ParagraphProperties stellt das <pPr> -Element dar.

Run-Klasse

Absätze in einem Textverarbeitungsdokument enthalten am häufigsten Text. Im OXML-Dateiformatschema für WordprocessingML-Dokumente wird das run-Element <r> bereitgestellt, um einen Textbereich abzugrenzen. Die OXML SDK-Klasse Run stellt das <r> -Element dar.

Text-Objekt

<r> Beim -Element ist das Textelement <t> der Container für den Text, aus dem der Dokumentinhalt besteht. Die OXML SDK-Klasse Text stellt das <t> -Element dar.


Open XML SDK-Codebeispiel

Der folgende Code instanziiert ein Open XML SDKParagraph-Objekt und verwendet es dann zum Hinzufügen von Text zu einem WordprocessingML-Dokument.

// <Snippet0>
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
using System;


static void WriteToWordDoc(string filepath, string txt)
{
    // Open a WordprocessingDocument for editing using the filepath.
    using (WordprocessingDocument wordprocessingDocument = WordprocessingDocument.Open(filepath, true))
    {
        if (wordprocessingDocument is null)
        {
            throw new ArgumentNullException(nameof(wordprocessingDocument));
        }
        // Assign a reference to the existing document body.
        MainDocumentPart mainDocumentPart = wordprocessingDocument.MainDocumentPart ?? wordprocessingDocument.AddMainDocumentPart();
        mainDocumentPart.Document ??= new Document();
        Body body = mainDocumentPart.Document.Body ?? mainDocumentPart.Document.AppendChild(new Body());

        // Add a paragraph with some text.
        Paragraph para = body.AppendChild(new Paragraph());
        Run run = para.AppendChild(new Run());
        run.AppendChild(new Text(txt));
    }
}
// </Snippet0>

WriteToWordDoc(args[0], args[1]);

Siehe auch

Informationen zum Open XML SDK für Office

Arbeiten mit Läufen

Vorgehensweise: Anwenden einer Formatvorlage auf einen Absatz in einem Dokument aus einem Textverarbeitungsprogramm

Vorgehensweise: Öffnen und Hinzufügen von Text in einem Textverarbeitungsdokument