PowerTools for Open XML
Back to TOCAll TopicsCondensed TOC
Example source code and guidance for creating, querying, and modifying Open XML documents, spreadsheets, and presentations.
- Getting Started with Open XML PowerTools Markup Simplifier
- Open XML Markup Simplifier Application makes it easier to research WordprocessingML
- Introduction to DocumentBuilder 2.0 – Screen-Cast 1 of 3
- Introduction to DocumentBuilder 2.0 – Screen-Cast 2 of 3
- Introduction to DocumentBuilder 2.0 – Screen-Cast 3 of 3
- Introducing TextReplacer: A New Class for PowerTools for Open XML
- Short and Sweet Intro to DocumentBuilder 2.0
- Advanced use of DocumentBuilder 2.0
- Exploring the Set-OpenXmlString CMDLET in PowerTools for Open XML 2.2
- Merge Comments from Multiple OpenXML WordprocessingML Documents into a Single Document
- Split-OpenXmlDocument cmdlet in PowerTools for Open XML
- Screen-Cast: Functional Programming Utility Methods and Classes for Open XML
- Open XML Specific Utility Methods and Classes in PowerTools for Open XML
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.
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)
Here is a small screen-cast that shows the use of MarkupSimplifier. This screen-cast uses Open XML Package Editor Power Tool for Visual Studio 2010. (Article,Video)
Sometimes when researching and examining Open XML WordprocessingML markup, extraneous markup that is not relevant to the issue at hand gets in the way of seeing what is going on. If you are researching markup by creating documents, altering documents, and then comparing the two documents, as detailed in How to Solve Open XML Developer Problems, your research process is made significantly easier by simplifying the markup before comparing. (Video)
This post contains the first of three screen-casts that introduces DocumentBuilder 2.0, talks about interrelated markup, and explores how DocumentBuilder solves developer issues with regards to interrelated markup. While this screen-cast is a bit long (20 minutes), it will be important for developers using DocumentBuilder who want to know how DocumentBuilder works. (Video)
This screen-cast builds on the previous screen-cast where I walk through the process of transferring comments from multiple source documents into a destination document. In this screen-cast, I insert images into the comments. This introduces some complexity – the comments part has a relationship to an image part. (Video)
This screen-cast builds on the previous two screen-casts where I walk through the process of transferring comments from multiple source documents into a destination document. In this final screen-cast in the series, I walk through some of the code in DocumentBuilder 2.0 – I explain how the code is data-driven to make it more robust, and discuss the structure of the code and how DocumentBuilder 2.0 works. (Video)
This code to search-and-replace in an Open XML WordprocessingML document uses LINQ to XML to implement a functional transform. (Video)
This is a short screen-cast that explains what DocumentBuilder 2.0 is all about, in less than seven minutes. (Video)
The default approach to working with DocumentBuilder 2.0 enables you to take bits and pieces of multiple documents and assemble them together into a new document. However, there is an interesting scenario that this approach does not handle. You may want to import a document into a cell in a table, into a text box, or into a content control. You can do this with DocumentBuilder 2.0. This video shows how. (Video)
The Set-OpenXmlString cmdlet enables interesting functionality – you can do a search-and-replace of content without automating Word, and you can search-and-replace in many documents at once. The Set-OpenXmlString can search-and-replace in both WordprocessingML documents and PresentationML documents. (Video)
Introduces code that shows how to merge comments from multiple WordprocessingML documents into a single document. (Video)
In document processing parlance, shredding a document is the process of dividing a source document according to certain rules, and creating a number of documents from the source document. This is useful, for instance, when you have a huge document, and you want to divide it into multiple documents to hand off to different authors or editors. Then, after all edits have been completed, you can merge the various parts back into a complete document. (Video)
In the process of developing the PowerTools for Open XML, over the years, I have developed some needed core functionality and utility methods, particularly for writing LINQ to XML code that queries and transforms Open XML documents. (Video)
Screen-cast that introduces a number of OpenXML specific utility methods and classes in PowerTools for Open XML. These classes and methods are in the PtOpenXmlUtil.cs module. (Video)