What is DocX?

DocX is a .NET library that allows developers to manipulate Word 2007/2010/2013 files, in an easy and intuitive manner. DocX is fast, lightweight and best of all it does not require Microsoft Word or Office to be installed.

DocX is also available on GitHub. We will try to update both.

DocX Author

DocX was written by a PhD student --Cathal Coffey-- studying at the National University of Ireland Maynooth. If you have found DocX useful and would like to buy Cathal lunch then you can do so via a paypal donation.

To connect with Cathal on LinkedIn please follow: http://ie.linkedin.com/in/cathalcoffey
For Cathal's personal website follow: http://www.cathalcoffey.ie

DocX Maintenance

Currently the development of DocX is mostly done by great support of community with project being maintained by Przemysław Kłys (MadBoy).

To connect with Przemek on LinkedIn please follow http://www.linkedin.com/in/pklys
For Przemek own little company website visit Evotec

Cutting Edge

If you do not wish to wait for the next stable release of DocX.dll, you can build your own copy from the latest source code.

What else do I need?

All that you need to install in order to use DocX is the .NET framework 4.0 and Visual Studio 2010 or later, both of which are free.

What are the main features of DocX?

1) Insert, Remove or Replace text in a document. 
All standard text formatting is available. Font {Family, Size, Color}, Bold, Italic, Underline, Strikethrough, Script{Sub, Super}, Highlight.
Here’s a cool example of replacing text across many documents in Parallel.

2) Paragraph properties are exposed.
     a) Direction LeftToRight or RightToLeft,
     b) Indentation,
     c) Alignment.

3) DocX also supports
     a) Pictures,
     b) Hyperlinks,
     c) Tables,
     d) Headers & Footers,
     e) Custom Properties.

Why would I use DocX?

DocX makes creating and manipulating documents a simple task. It does not use COM libraries nor does it require Microsoft Office to be installed.

The following blog post compares the code used to create a HelloWorld document using
1) Office Interop libraries,
3) DocX.

How can I learn more?

I have dedicated a blog to DocX. I regularly post new code examples here. The below videos are also excellent tutorials on how to use DocX.

Getting started Paragraphs and text formatting

Advanced Examples

1) Step by step guide to create an invoice for a company.

2) Replace text across many documents in Parallel.

3) Programmatically manipulate an Image imbedded inside a document.

4) Converting DocX into (.doc, .pdf, .html)

Do you have an interesting or informative example that you would like to share?
If you do, please email me.

What do other people think?


How can I send feedback!

If you have found DocX useful at work or in a personal project, I would love to hear about it. Equally if you have decided not to use DocX, please send me and email stating why this is so. I will use this feedback to improve DocX in future releases. My email address is coffey.cathal@gmail.com.

Other Projects

Cathal has another open source project sql4csv. sql4csv is a python library that offers an SQL "like" interface for .csv files. Cathal also has 3 android application on GooglePlay.

Happy coding,

Last edited Oct 29, 2016 at 9:01 AM by MadBoy, version 89