At long last, I have completed and posted a much requested and sorely needed update to DocumentBuilder. DocumentBuilder is code that is part of the PowerTools for Open XML project that handles issues of interrelated markup, enabling you to generate new documents from existing documents in a variety of ways. Many more details on OpenXMLDeveloper.org.
Archive for PowerTools
Sometimes when researching Open XML WordprocessingML markup, extraneous markup gets in the way of your research. The extraneous markup makes it harder to see and understand the markup issues at hand. The MarkupSimplifier class (which is part of the PowerTools for Open XML project) can help a lot, but as downloaded from CodePlex, it is only a class. You need to write code to use the class, and if you want to use the markup simplifier as part of your research process, it is inconvenient. I’ve written a small WinForm application that uses the MarkupSimplifier class, and makes the use of the simplifier class much more seamless in your research.
You can download the Markup Simplifier Application at OpenXMLDeveloper.org. The code is attached to the blog post.
I’ve recorded a six minute video that shows the Markup Simplifier application in action:
On OpenXmlDeveloper.org, in one of the forums, there is a thread about how to clean Word proofing errors clutter out of an Open XML WordprocessingML document. In PowerTools, in the HtmlConverter project, there is a class called MarkupSimplifier, which can remove proofing errors. In addition, it can simplify WordprocessingML markup in a variety of ways, including removal of comments, content controls, and etc. The blog post, Enabling Better Transformations by Simplifying Open XML WordprocessingML Markup describes MarkupSimplifier in more detail.
Here is a small screen-cast that shows the use of MarkupSimplifier. In the screen-cast, I use Open XML Package Editor Power Tool for Visual Studio 2010.
Here is the listing of the small program that uses MarkupSimplifier
static void Main(string args)
using (WordprocessingDocument doc =
SimplifyMarkupSettings settings = new SimplifyMarkupSettings
RemoveComments = true,
RemoveContentControls = true,
RemoveEndAndFootNotes = true,
RemoveFieldCodes = false,
RemoveLastRenderedPageBreak = true,
RemovePermissions = true,
RemoveProof = true,
RemoveRsidInfo = true,
RemoveSmartTags = true,
RemoveSoftHyphens = true,
ReplaceTabsWithSpaces = true,