GemBox.Document supports most of the Microsoft Word document features through its API, but not all.

For example, GemBox.Document doesn't support table related styles, document revision changes, structured document and custom XML tags, comments, footnotes and endnotes through its API.

Note

Unsupported features will be incrementally added to the future versions of GemBox.Document, based on a customer feedback.

Although not supporting all Microsoft Word document features through its API, GemBox.Document allows you to preserve the unsupported features, so you don't lose any relevant document content when loading and saving a document.

Activate / decativate preservation

Preservation of the unsupported features is managed through LoadOptions..::..PreserveUnsupportedFeatures property when loading a document with DocumentModel..::..Load static methods.

Setting the LoadOptions..::..PreserveUnsupportedFeatures property to false will deactivate preservation. By default, preservation is activated.

Note

Default DOCX load options returned from LoadOptions..::..DocxDefault static property has preservation activated.

Following example shows how to load a DOCX document with and without activated preservation:

CopyC#
// Preserve unsupported features while loading.
var docPreserved = DocumentModel.Load("Document.docx", LoadOptions.DocxDefault);

// Do not preserve unsupported features while loading.
var docUnpreserved = DocumentModel.Load("Document.docx", new DocxLoadOptions() { PreserveUnsupportedFeatures = false });
CopyVB.NET
' Preserve unsupported features while loading.
Dim docPreserved = DocumentModel.Load("Document.docx", LoadOptions.DocxDefault)

' Do not preserve unsupported features while loading.
Dim docUnpreserved = DocumentModel.Load("Document.docx", New DocxLoadOptions() With {.PreserveUnsupportedFeatures = False})

PreservedInline element

PreservedInline element is a special element that may be contained in a document only if a document is loaded with activated preservation.

PreservedInline element does not have a public constructor nor any public property, its only purpose is to keep internal data about a document content element that was read from the loaded file but is not directly supported through GemBox.Document API.