Letar du efter en lösning för att automatisera Microsoft Word-funktioner, dvs skapa, uppdatera och konvertera Word-dokument? Om ja, den här artikeln kommer att göra ditt liv enklare genom att visa hur man skapar Word-dokument i C# utan MS office. Dessutom kommer du att lära dig hur du redigerar ett befintligt Word-dokument, konverterar en DOC/DOCX-fil eller tolkar ett dokument i några enkla steg. Du kommer också att få ett kodexempel som är lätt att integrera för att implementera varje funktion.
MS Word-dokumentautomation och rapportgenerering är mycket efterfrågade av företag. Aspose.Words för .NET är en komplett och funktionsrik Word-automatiseringslösning för att skapa, redigera eller analysera Word-dokument i sådana fall. Den här artikeln täcker alla grundläggande funktioner som krävs för att generera och manipulera Word-dokument programmatiskt med C#. När du har läst den här artikeln kommer du att kunna:
- C#-bibliotek för att automatisera MS Word
- Skapa ett Word-dokument (.doc, .docx) med C#
- Redigera eller ändra ett Word-dokument med C#
- Konvertera ett Word-dokument med C#
- Analysera ett Word-dokument med C#
C#-bibliotek för att automatisera MS Word
Aspose.Words for .NET är ett fantastiskt bibliotek med en rad funktioner för att skapa och manipulera MS Word-dokument. Se till att installera det här biblioteket i din applikation innan du skapar ett nytt Word-dokument. Du kan ladda ner biblioteket från här. Ett annat alternativ är att installera det via NuGet Package Manager eller Package Manager Console i Visual Studio.
PM> Install-Package Aspose.Words
Hur man skapar ett Word-dokument i C#
Låt oss börja vår resa genom att skapa ett nytt Word-dokument från grunden.
Klassen DocumentBuilder i biblioteket innehåller alla metoder och egenskaper för att skapa Word-dokument. I kombination med klassen Document stöder DocumentBuilder att infoga element som text/stycken, kryssrutor, tabeller, listor, bilder och andra objekt som ett Word-dokument kan innehålla. Dessutom kan du ange teckensnitt och andra formateringsalternativ med den här klassen.
Följande är de enkla stegen för att skapa ett nytt Word-dokument i C#.
- Skapa ett nytt dokumentobjekt.
- Skapa och nytt DocumentBuilder-objekt och initiera det med Document-objektet.
- Infoga/skriv element med hjälp av DocumentBuilder-objektet.
- Spara dokumentet med metoden Document.Save.
Följande kodexempel visar hur man skapar en Word DOCX i C#.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Ange teckensnittsformatering
Font font = builder.Font;
font.Size = 32;
font.Bold = true;
font.Color = System.Drawing.Color.Black;
font.Name = "Arial";
font.Underline = Underline.Single;
// Infoga text
builder.Writeln("This is the first page.");
builder.Writeln();
// Ändra formatering för nästa element.
font.Underline = Underline.None;
font.Size = 10;
font.Color = System.Drawing.Color.Blue;
builder.Writeln("This following is a table");
// Sätt in en tabell
Table table = builder.StartTable();
// Infoga en cell
builder.InsertCell();
// Använd fasta kolumnbredder.
table.AutoFit(AutoFitBehavior.AutoFitToContents);
builder.CellFormat.VerticalAlignment = CellVerticalAlignment.Center;
builder.Write("This is row 1 cell 1");
// Infoga en cell
builder.InsertCell();
builder.Write("This is row 1 cell 2");
builder.EndRow();
builder.InsertCell();
builder.Write("This is row 2 cell 1");
builder.InsertCell();
builder.Write("This is row 2 cell 2");
builder.EndRow();
builder.EndTable();
builder.Writeln();
// Infoga bild
builder.InsertImage("image.png");
// Infoga sidbrytning
builder.InsertBreak(BreakType.PageBreak);
// alla element efter sidbrytning kommer att infogas på nästa sida.
// Spara dokumentet
doc.Save("Document.docx");
Följande är dokumentet vi får efter att ha kört ovanstående kod.
Besök dessa artiklar för att utforska mer om de element du kan lägga till i ett Word-dokument med Aspose.Words för .NET.
Redigera ett Word-dokument i C#
Du kan också redigera eller modifiera befintliga Word-dokument med Aspose.Words för .NET. Aspose.Words dokumentobjektmodellklasser låter dig komma åt och ändra dokumentets element samt deras formatering. DOM är in-memory representation av dokumentet. För att förstå dokumentrepresentationen som DOM, se DOM-översikten.
Låt oss nu kolla in hur man redigerar ett befintligt element i ett Word-dokument. Anta att vi behöver uppdatera texten “Detta är första sidan.” i dokumentet som vi nyligen har skapat. Eftersom detta är det första stycket i det första avsnittet av dokumentet kan vi komma åt det genom att ange indexet för det första avsnittet och det första stycket.
Följande kodexempel visar hur man redigerar stycket i Word-dokumentet med C#.
// Ladda dokument
Document doc = new Document("Document.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
// Gå till stycket
var paragraph=doc.Sections[0].Body.Paragraphs[0].Runs[0];
paragraph.Text = "This is updated text";
// Spara dokumentet
doc.Save("Document_updated.docx");
Följande är det uppdaterade Word-dokumentet.
C# Microsoft Word Automation - Konvertera ett Word-dokument
Tillsammans med att skapa och manipulera Word-dokument tillåter Aspose.Words för .NET också att konvertera ett dokument till andra format inklusive (men inte begränsat till) PDF, XPS, EPUB, HTML och bildformat som BMP, PNG eller JPEG. Följande kodexempel visar hur man konverterar ett Word-dokument till PDF i C#.
Document doc = new Document("word.docx");
// Ge PDFSaveOption-kompatibilitet till PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Konvertera Word till PDF
doc.Save("output.pdf", options);
Besök denna artikel för att se hur du konverterar ett Word-dokument till andra format.
Automatisera Word-dokumenttolkning i C#
Du kan också analysera ett Word-dokument genom att extrahera dess innehåll som vanlig text. Följande kodexempel visar hur man extraherar text från ett Word-dokument och sparar den i en .txt-fil.
// Ladda dokumentet från disken.
Document doc = new Document("document.docx");
// Spara som vanlig text
doc.Save("output.txt");
Skapa MS Word-dokument med en gratis licens
Du kan få en gratis tillfällig licens och skapa MS Word-dokument från grunden utan utvärderingsbegränsningar.
C# Word Automation Library - Läs mer
Besök dokumentationen för Aspose.Words för .NET för en komplett utvecklarguide. Om du skulle hitta något som är förvirrande för dig, låt oss veta det via vårt forum.
Slutsats
Det finns olika scenarier där Microsoft Word-automatisering blir användbar. Till exempel för att generera rapporter, fakturor etc. Den här artikeln ger den enklaste lösningen för hur man skapar MS Word-dokument i C# med några enkla steg. Dessutom har du lärt dig hur du använder C# Word automation-bibliotek för att redigera, analysera och konvertera Word-dokument.
Relaterade artiklar)
- Konvertera Word-dokument till PDF med C# - A complete guide.