stephanscheidl / SharpDocx

C# based template engine for generating Word documents

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SharpDocx

NuGet MIT AppVeyor

C# based template engine for generating Word documents

Generating documents with SharpDocx is a two step process. First you create a view in Word. A view is a Word document which also contains C# code. Code can be inserted anywhere, e.g. <%= DateTime.Now %> would insert the current date and time.

The next step is to create documents based on this view. This requires two lines of code:

var document = DocumentFactory.Create("view.cs.docx");
document.Generate("output.docx");

Out of the box SharpDocx supports inserting text, tables, images and more. See the Tutorial sample (here's the view and the controller, and here's the generated document).

If you want, you can specify a view model to be used in your view. Then you could write things like <% foreach (var item in Model.MyList) { %>. See the Model sample.

If you want to do something that's not supported by SharpDocx, you can do so by creating your own document subclass. See the Inheritance example.

SharpDocx supports .NET Framework 3.5/4.5 and .NET Standard 2.0.

About

C# based template engine for generating Word documents

License:MIT License


Languages

Language:C# 98.5%Language:Smalltalk 1.5%Language:Batchfile 0.1%