Preservation
GemBox.Presentation supports most Microsoft PowerPoint presentation features through its API but not all.
For example, GemBox.Presentation does not support SmartArt graphics, OLE objects, and controls through its API.
Note
Unsupported features will be incrementally added to future versions of GemBox.Presentation based on customer feedback.
Although it does not support all Microsoft PowerPoint presentation features through its API, GemBox.Presentation does allow you to preserve the unsupported features, which means you will not lose any relevant presentation content when loading and saving a presentation.
Activating/deactivating preservation
Preservation of unsupported features is managed through the PreserveUnsupportedFeatures property when loading a presentation with the PresentationDocument.Load(String, LoadOptions) static methods.
Setting the PreserveUnsupportedFeatures property to false will deactivate preservation. By default, preservation is activated.
Note
The default PPTX load options returned from the Pptx static property have preservation activated.
The following example shows how to load a PPTX presentation with preservation activated and deactivated:
// Preserve unsupported features while loading.
var presentationPreserved = PresentationDocument.Load("Presentation.pptx", LoadOptions.Pptx);
// Do not preserve unsupported features while loading.
var presentationUnpreserved = PresentationDocument.Load("Presentation.pptx", new PptxLoadOptions() { PreserveUnsupportedFeatures = false });
UnknownDrawing and TextUnknown types
UnknownDrawing and TextUnknown are special types that may be contained in a presentation if the presentation is loaded with preservation activated.
The UnknownDrawing and TextUnknown types do not have a public constructor. The sole purpose of their single property is to keep internal data about presentation content that is read from a loaded file but not directly supported by the GemBox.Presentation API.