Verwenden von DocumentFormat.OpenXml in C# .NET, um eine gesamte DOCX-Datei kursiv zu formatierenC#

Ein Treffpunkt für C#-Programmierer
Guest
 Verwenden von DocumentFormat.OpenXml in C# .NET, um eine gesamte DOCX-Datei kursiv zu formatieren

Post by Guest »

Mit C#/.NET und dem DocumentFormat.OpenXml-Nuget-Paket von Microsoft versuche ich, DOCX-Dateien so zu ändern, dass das gesamte Dokument kursiv formatiert ist. Allerdings ist das Ausgabedokument viel größer, als wenn ich die Änderungen in Word vornehmen würde (Strg+A, Strg+I, Strg+S).
Welchen Ansatz würden Sie stattdessen empfehlen? dies:

Code: Select all

private void ModifyDocument(string filePath) {
using (WordprocessingDocument document = WordprocessingDocument.Open(filePath, true))
{
var body = document.MainDocumentPart.Document.Body;

// Iterate through all paragraphs and modify text formatting
foreach (var paragraph in body.Elements
())
{
foreach (var run in paragraph.Elements())
{
// Retrieve existing RunProperties or create a new one
var runProperties = run.GetFirstChild();
if (runProperties == null)
{
runProperties = new RunProperties();
run.PrependChild(runProperties);
}

// Modify font to Times New Roman and italicize the text
runProperties.RunFonts = new RunFonts { Ascii = "Times New Roman", HighAnsi = "Times New Roman" };
runProperties.Italic = new Italic();
}
}

document.MainDocumentPart.Document.Save(); // Save changes
}
}
Vielen Dank!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post