## CompatibilityOptions class


Contains compatibility options (that is, the user preferences entered on the **Compatibility** tab of the **Options** dialog in Microsoft Word). To learn more, visit the [Detect File Format and Check Format Compatibility](https://docs.aspose.com/words/cpp/detect-file-format-and-check-format-compatibility/) documentation article.

```cpp
class CompatibilityOptions : public System::Object
```

## Methods

| Method | Description |
| --- | --- |
| [get_AdjustLineHeightInTable](./get_adjustlineheightintable/)() | Add [Document](../../aspose.words/document/) Grid Line Pitch To Lines in Table Cells. |
| [get_AlignTablesRowByRow](./get_aligntablesrowbyrow/)() | Align Table Rows Independently. |
| [get_AllowSpaceOfSameStyleInTable](./get_allowspaceofsamestyleintable/)() | Allow Contextual Spacing of Paragraphs in [Tables](../../aspose.words.tables/). |
| [get_ApplyBreakingRules](./get_applybreakingrules/)() | Use Legacy Ethiopic and Amharic Line Breaking Rules. |
| [get_AutofitToFirstFixedWidthCell](./get_autofittofirstfixedwidthcell/)() | Allow Table Columns To Exceed Preferred Widths of Constituent Cells. |
| [get_AutoSpaceLikeWord95](./get_autospacelikeword95/)() | Emulate Word 95 Full-Width Character Spacing. |
| [get_BalanceSingleByteDoubleByteWidth](./get_balancesinglebytedoublebytewidth/)() | Balance Single Byte and Double Byte Characters. |
| [get_CachedColBalance](./get_cachedcolbalance/)() | Use Cached [Paragraph](../../aspose.words/paragraph/) Information for Column Balancing. |
| [get_ConvMailMergeEsc](./get_convmailmergeesc/)() | Treat Backslash Quotation Delimiter as Two Quotation Marks. |
| [get_DisableOpenTypeFontFormattingFeatures](./get_disableopentypefontformattingfeatures/)() | Specifies to disable OpenType font formatting features. |
| [get_DisplayHangulFixedWidth](./get_displayhangulfixedwidth/)() | Always Use Fixed Width for Hangul Characters. |
| [get_DoNotAutofitConstrainedTables](./get_donotautofitconstrainedtables/)() | Do Not AutoFit [Tables](../../aspose.words.tables/) To Fit Next To Wrapped Objects. |
| [get_DoNotBreakConstrainedForcedTable](./get_donotbreakconstrainedforcedtable/)() | Don't Break Table Rows Around Floating [Tables](../../aspose.words.tables/). |
| [get_DoNotBreakWrappedTables](./get_donotbreakwrappedtables/)() | Do Not Allow Floating [Tables](../../aspose.words.tables/) To Break Across Pages. |
| [get_DoNotExpandShiftReturn](./get_donotexpandshiftreturn/)() | Don't Justify Lines Ending in Soft Line Break. |
| [get_DoNotLeaveBackslashAlone](./get_donotleavebackslashalone/)() | Convert Backslash To Yen Sign When Entered. |
| [get_DoNotSnapToGridInCell](./get_donotsnaptogridincell/)() | Do Not Snap to [Document](../../aspose.words/document/) Grid in Table Cells with Objects. |
| [get_DoNotSuppressIndentation](./get_donotsuppressindentation/)() | Do Not Ignore Floating Objects When Calculating [Paragraph](../../aspose.words/paragraph/) Indentation. |
| [get_DoNotSuppressParagraphBorders](./get_donotsuppressparagraphborders/)() | Do Not Suppress [Paragraph](../../aspose.words/paragraph/) Borders Next To Frames. |
| [get_DoNotUseEastAsianBreakRules](./get_donotuseeastasianbreakrules/)() | Do Not Compress Compressible Characters When Using [Document](../../aspose.words/document/) Grid. |
| [get_DoNotUseHTMLParagraphAutoSpacing](./get_donotusehtmlparagraphautospacing/)() | Use Fixed [Paragraph](../../aspose.words/paragraph/) Spacing for HTML Auto Setting. |
| [get_DoNotUseIndentAsNumberingTabStop](./get_donotuseindentasnumberingtabstop/)() | Ignore Hanging Indent When Creating Tab Stop After Numbering. |
| [get_DoNotVertAlignCellWithSp](./get_donotvertaligncellwithsp/)() | Don't Vertically Align Cells Containing Floating Objects. |
| [get_DoNotVertAlignInTxbx](./get_donotvertalignintxbx/)() | Ignore Vertical Alignment in Textboxes. |
| [get_DoNotWrapTextWithPunct](./get_donotwraptextwithpunct/)() | Do Not Allow Hanging Punctuation With Character Grid. |
| [get_FootnoteLayoutLikeWW8](./get_footnotelayoutlikeww8/)() | Emulate Word 6.x/95/97 Footnote Placement. |
| [get_ForgetLastTabAlignment](./get_forgetlasttabalignment/)() | Ignore Width of Last Tab Stop When Aligning [Paragraph](../../aspose.words/paragraph/) If It Is Not Left Aligned. |
| [get_GrowAutofit](./get_growautofit/)() | Allow [Tables](../../aspose.words.tables/) to AutoFit Into Page Margins. |
| [get_LayoutRawTableWidth](./get_layoutrawtablewidth/)() | Ignore Space Before Table When Deciding If Table Should Wrap Floating Object. |
| [get_LayoutTableRowsApart](./get_layouttablerowsapart/)() | Allow Table Rows to Wrap [Inline](../../aspose.words/inline/) Objects Independently. |
| [get_LineWrapLikeWord6](./get_linewraplikeword6/)() | Emulate Word 6.0 Line Wrapping for East Asian Text. |
| [get_MWSmallCaps](./get_mwsmallcaps/)() | Emulate Word 5.x for the Macintosh Small Caps Formatting. |
| [get_NoColumnBalance](./get_nocolumnbalance/)() | Do Not Balance Text Columns within a [Section](../../aspose.words/section/). |
| [get_NoExtraLineSpacing](./get_noextralinespacing/)() | Do Not Center Content on Lines With Exact Line Height. |
| [get_NoLeading](./get_noleading/)() | Do Not Add Leading Between Lines of Text. |
| [get_NoSpaceRaiseLower](./get_nospaceraiselower/)() | Do Not Increase Line Height for Raised/Lowered Text. |
| [get_NoTabHangInd](./get_notabhangind/)() | Do Not Create Custom Tab Stop for Hanging Indent. |
| [get_OverrideTableStyleFontSizeAndJustification](./get_overridetablestylefontsizeandjustification/)() | Specifies how the style hierarchy of the document is evaluated. |
| [get_PrintBodyTextBeforeHeader](./get_printbodytextbeforeheader/)() | Print [Body](../../aspose.words/body/) Text before Header/Footer Contents. |
| [get_PrintColBlack](./get_printcolblack/)() | Print Colors as Black And White without Dithering. |
| [get_SelectFldWithFirstOrLastChar](./get_selectfldwithfirstorlastchar/)() | Select Field When First or Last Character Is Selected. |
| [get_ShapeLayoutLikeWW8](./get_shapelayoutlikeww8/)() | Emulate Word 97 Text Wrapping Around Floating Objects. |
| [get_ShowBreaksInFrames](./get_showbreaksinframes/)() | Display Page/Column Breaks Present in Frames. |
| [get_SpaceForUL](./get_spaceforul/)() | Add Additional Space Below Baseline For Underlined East Asian Text. |
| [get_SpacingInWholePoints](./get_spacinginwholepoints/)() | Only Expand/Condense Text By Whole Points. |
| [get_SplitPgBreakAndParaMark](./get_splitpgbreakandparamark/)() | Always Move [Paragraph](../../aspose.words/paragraph/) Mark to Page after a Page Break. |
| [get_SubFontBySize](./get_subfontbysize/)() | Increase Priority Of [Font](../../aspose.words/font/) Size During [Font](../../aspose.words/font/) Substitution. |
| [get_SuppressBottomSpacing](./get_suppressbottomspacing/)() | Ignore Exact Line Height for Last Line on Page. |
| [get_SuppressSpacingAtTopOfPage](./get_suppressspacingattopofpage/)() | Ignore Minimum Line Height for First Line on Page. |
| [get_SuppressSpBfAfterPgBrk](./get_suppressspbfafterpgbrk/)() | Do Not Use Space Before On First Line After a Page Break. |
| [get_SuppressTopSpacing](./get_suppresstopspacing/)() | Ignore Minimum and Exact Line Height for First Line on Page. |
| [get_SuppressTopSpacingWP](./get_suppresstopspacingwp/)() | Emulate WordPerfect 5.x Line Spacing. |
| [get_SwapBordersFacingPgs](./get_swapbordersfacingpgs/)() | Swap [Paragraph](../../aspose.words/paragraph/) Borders on Odd Numbered Pages. |
| [get_SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning](./get_swapinsideandoutsideformirrorindentsandrelativepositioning/)() | Specifies to swap inside and outside for mirror indents and relative positioning. |
| [get_TransparentMetafiles](./get_transparentmetafiles/)() | Specifies not to blank the area behind metafile pictures. |
| [get_TruncateFontHeightsLikeWP6](./get_truncatefontheightslikewp6/)() | Emulate WordPerfect 6.x [Font](../../aspose.words/font/) Height Calculation. |
| [get_UICompat97To2003](./get_uicompat97to2003/)() | True to disable UI functionality which is not compatible with Word97-2003. Default value is **false**. |
| [get_UlTrailSpace](./get_ultrailspace/)() | Underline All Trailing Spaces. |
| [get_UnderlineTabInNumList](./get_underlinetabinnumlist/)() | Underline Following Character Following Numbering. |
| [get_UseAltKinsokuLineBreakRules](./get_usealtkinsokulinebreakrules/)() | Use Alternate Set of East Asian Line Breaking Rules. |
| [get_UseAnsiKerningPairs](./get_useansikerningpairs/)() | Use ANSI Kerning Pairs from [Fonts](../../aspose.words.fonts/). |
| [get_UseFELayout](./get_usefelayout/)() | Do Not Bypass East Asian/Complex Script [Layout](../../aspose.words.layout/) Code. |
| [get_UseNormalStyleForList](./get_usenormalstyleforlist/)() | Do Not Automatically Apply List [Paragraph](../../aspose.words/paragraph/)[Style](../../aspose.words/style/) To Bulleted/Numbered Text. |
| [get_UsePrinterMetrics](./get_useprintermetrics/)() | Use Printer Metrics To Display Documents. |
| [get_UseSingleBorderforContiguousCells](./get_usesingleborderforcontiguouscells/)() | Use Simplified Rules For Table [Border](../../aspose.words/border/) Conflicts. |
| [get_UseWord2002TableStyleRules](./get_useword2002tablestylerules/)() | Emulate Word 2002 Table [Style](../../aspose.words/style/) Rules. |
| [get_UseWord2010TableStyleRules](./get_useword2010tablestylerules/)() | Specifies to use Word2010 table style rules. |
| [get_UseWord97LineBreakRules](./get_useword97linebreakrules/)() | Emulate Word 97 East Asian Line Breaking. |
| [get_WPJustification](./get_wpjustification/)() | Emulate WordPerfect 6.x [Paragraph](../../aspose.words/paragraph/) Justification. |
| [get_WPSpaceWidth](./get_wpspacewidth/)() | Specifies whether to set the width of a space as is done in WordPerfect 5.x. |
| [get_WrapTrailSpaces](./get_wraptrailspaces/)() | Line Wrap Trailing Spaces. |
| [GetType](./gettype/)() const override |  |
| [Is](./is/)(const System::TypeInfo\&) const override |  |
| [OptimizeFor](./optimizefor/)(Aspose::Words::Settings::MsWordVersion) | Allows to optimize the document contents as well as default Aspose.Words behavior to a particular versions of MS Word. Use this method to prevent MS Word from displaying "Compatibility mode" ribbon upon document loading. (Note that you may also need to set the [Compliance](../../aspose.words.saving/ooxmlsaveoptions/get_compliance/) property to [Iso29500_2008_Transitional](../../aspose.words.saving/ooxmlcompliance/) or higher.) |
| [set_AdjustLineHeightInTable](./set_adjustlineheightintable/)(bool) | Add [Document](../../aspose.words/document/) Grid Line Pitch To Lines in Table Cells. |
| [set_AlignTablesRowByRow](./set_aligntablesrowbyrow/)(bool) | Align Table Rows Independently. |
| [set_AllowSpaceOfSameStyleInTable](./set_allowspaceofsamestyleintable/)(bool) | Allow Contextual Spacing of Paragraphs in [Tables](../../aspose.words.tables/). |
| [set_ApplyBreakingRules](./set_applybreakingrules/)(bool) | Use Legacy Ethiopic and Amharic Line Breaking Rules. |
| [set_AutofitToFirstFixedWidthCell](./set_autofittofirstfixedwidthcell/)(bool) | Allow Table Columns To Exceed Preferred Widths of Constituent Cells. |
| [set_AutoSpaceLikeWord95](./set_autospacelikeword95/)(bool) | Emulate Word 95 Full-Width Character Spacing. |
| [set_BalanceSingleByteDoubleByteWidth](./set_balancesinglebytedoublebytewidth/)(bool) | Balance Single Byte and Double Byte Characters. |
| [set_CachedColBalance](./set_cachedcolbalance/)(bool) | Use Cached [Paragraph](../../aspose.words/paragraph/) Information for Column Balancing. |
| [set_ConvMailMergeEsc](./set_convmailmergeesc/)(bool) | Treat Backslash Quotation Delimiter as Two Quotation Marks. |
| [set_DisableOpenTypeFontFormattingFeatures](./set_disableopentypefontformattingfeatures/)(bool) | Specifies to disable OpenType font formatting features. |
| [set_DisplayHangulFixedWidth](./set_displayhangulfixedwidth/)(bool) | Always Use Fixed Width for Hangul Characters. |
| [set_DoNotAutofitConstrainedTables](./set_donotautofitconstrainedtables/)(bool) | Do Not AutoFit [Tables](../../aspose.words.tables/) To Fit Next To Wrapped Objects. |
| [set_DoNotBreakConstrainedForcedTable](./set_donotbreakconstrainedforcedtable/)(bool) | Don't Break Table Rows Around Floating [Tables](../../aspose.words.tables/). |
| [set_DoNotBreakWrappedTables](./set_donotbreakwrappedtables/)(bool) | Do Not Allow Floating [Tables](../../aspose.words.tables/) To Break Across Pages. |
| [set_DoNotExpandShiftReturn](./set_donotexpandshiftreturn/)(bool) | Don't Justify Lines Ending in Soft Line Break. |
| [set_DoNotLeaveBackslashAlone](./set_donotleavebackslashalone/)(bool) | Convert Backslash To Yen Sign When Entered. |
| [set_DoNotSnapToGridInCell](./set_donotsnaptogridincell/)(bool) | Do Not Snap to [Document](../../aspose.words/document/) Grid in Table Cells with Objects. |
| [set_DoNotSuppressIndentation](./set_donotsuppressindentation/)(bool) | Do Not Ignore Floating Objects When Calculating [Paragraph](../../aspose.words/paragraph/) Indentation. |
| [set_DoNotSuppressParagraphBorders](./set_donotsuppressparagraphborders/)(bool) | Do Not Suppress [Paragraph](../../aspose.words/paragraph/) Borders Next To Frames. |
| [set_DoNotUseEastAsianBreakRules](./set_donotuseeastasianbreakrules/)(bool) | Do Not Compress Compressible Characters When Using [Document](../../aspose.words/document/) Grid. |
| [set_DoNotUseHTMLParagraphAutoSpacing](./set_donotusehtmlparagraphautospacing/)(bool) | Use Fixed [Paragraph](../../aspose.words/paragraph/) Spacing for HTML Auto Setting. |
| [set_DoNotUseIndentAsNumberingTabStop](./set_donotuseindentasnumberingtabstop/)(bool) | Ignore Hanging Indent When Creating Tab Stop After Numbering. |
| [set_DoNotVertAlignCellWithSp](./set_donotvertaligncellwithsp/)(bool) | Don't Vertically Align Cells Containing Floating Objects. |
| [set_DoNotVertAlignInTxbx](./set_donotvertalignintxbx/)(bool) | Ignore Vertical Alignment in Textboxes. |
| [set_DoNotWrapTextWithPunct](./set_donotwraptextwithpunct/)(bool) | Do Not Allow Hanging Punctuation With Character Grid. |
| [set_FootnoteLayoutLikeWW8](./set_footnotelayoutlikeww8/)(bool) | Emulate Word 6.x/95/97 Footnote Placement. |
| [set_ForgetLastTabAlignment](./set_forgetlasttabalignment/)(bool) | Ignore Width of Last Tab Stop When Aligning [Paragraph](../../aspose.words/paragraph/) If It Is Not Left Aligned. |
| [set_GrowAutofit](./set_growautofit/)(bool) | Allow [Tables](../../aspose.words.tables/) to AutoFit Into Page Margins. |
| [set_LayoutRawTableWidth](./set_layoutrawtablewidth/)(bool) | Ignore Space Before Table When Deciding If Table Should Wrap Floating Object. |
| [set_LayoutTableRowsApart](./set_layouttablerowsapart/)(bool) | Allow Table Rows to Wrap [Inline](../../aspose.words/inline/) Objects Independently. |
| [set_LineWrapLikeWord6](./set_linewraplikeword6/)(bool) | Emulate Word 6.0 Line Wrapping for East Asian Text. |
| [set_MWSmallCaps](./set_mwsmallcaps/)(bool) | Emulate Word 5.x for the Macintosh Small Caps Formatting. |
| [set_NoColumnBalance](./set_nocolumnbalance/)(bool) | Do Not Balance Text Columns within a [Section](../../aspose.words/section/). |
| [set_NoExtraLineSpacing](./set_noextralinespacing/)(bool) | Do Not Center Content on Lines With Exact Line Height. |
| [set_NoLeading](./set_noleading/)(bool) | Do Not Add Leading Between Lines of Text. |
| [set_NoSpaceRaiseLower](./set_nospaceraiselower/)(bool) | Do Not Increase Line Height for Raised/Lowered Text. |
| [set_NoTabHangInd](./set_notabhangind/)(bool) | Do Not Create Custom Tab Stop for Hanging Indent. |
| [set_OverrideTableStyleFontSizeAndJustification](./set_overridetablestylefontsizeandjustification/)(bool) | Specifies how the style hierarchy of the document is evaluated. |
| [set_PrintBodyTextBeforeHeader](./set_printbodytextbeforeheader/)(bool) | Print [Body](../../aspose.words/body/) Text before Header/Footer Contents. |
| [set_PrintColBlack](./set_printcolblack/)(bool) | Print Colors as Black And White without Dithering. |
| [set_SelectFldWithFirstOrLastChar](./set_selectfldwithfirstorlastchar/)(bool) | Select Field When First or Last Character Is Selected. |
| [set_ShapeLayoutLikeWW8](./set_shapelayoutlikeww8/)(bool) | Emulate Word 97 Text Wrapping Around Floating Objects. |
| [set_ShowBreaksInFrames](./set_showbreaksinframes/)(bool) | Display Page/Column Breaks Present in Frames. |
| [set_SpaceForUL](./set_spaceforul/)(bool) | Add Additional Space Below Baseline For Underlined East Asian Text. |
| [set_SpacingInWholePoints](./set_spacinginwholepoints/)(bool) | Only Expand/Condense Text By Whole Points. |
| [set_SplitPgBreakAndParaMark](./set_splitpgbreakandparamark/)(bool) | Always Move [Paragraph](../../aspose.words/paragraph/) Mark to Page after a Page Break. |
| [set_SubFontBySize](./set_subfontbysize/)(bool) | Increase Priority Of [Font](../../aspose.words/font/) Size During [Font](../../aspose.words/font/) Substitution. |
| [set_SuppressBottomSpacing](./set_suppressbottomspacing/)(bool) | Ignore Exact Line Height for Last Line on Page. |
| [set_SuppressSpacingAtTopOfPage](./set_suppressspacingattopofpage/)(bool) | Ignore Minimum Line Height for First Line on Page. |
| [set_SuppressSpBfAfterPgBrk](./set_suppressspbfafterpgbrk/)(bool) | Do Not Use Space Before On First Line After a Page Break. |
| [set_SuppressTopSpacing](./set_suppresstopspacing/)(bool) | Ignore Minimum and Exact Line Height for First Line on Page. |
| [set_SuppressTopSpacingWP](./set_suppresstopspacingwp/)(bool) | Emulate WordPerfect 5.x Line Spacing. |
| [set_SwapBordersFacingPgs](./set_swapbordersfacingpgs/)(bool) | Swap [Paragraph](../../aspose.words/paragraph/) Borders on Odd Numbered Pages. |
| [set_SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning](./set_swapinsideandoutsideformirrorindentsandrelativepositioning/)(bool) | Specifies to swap inside and outside for mirror indents and relative positioning. |
| [set_TransparentMetafiles](./set_transparentmetafiles/)(bool) | Specifies not to blank the area behind metafile pictures. |
| [set_TruncateFontHeightsLikeWP6](./set_truncatefontheightslikewp6/)(bool) | Emulate WordPerfect 6.x [Font](../../aspose.words/font/) Height Calculation. |
| [set_UICompat97To2003](./set_uicompat97to2003/)(bool) | True to disable UI functionality which is not compatible with Word97-2003. Default value is **false**. |
| [set_UlTrailSpace](./set_ultrailspace/)(bool) | Underline All Trailing Spaces. |
| [set_UnderlineTabInNumList](./set_underlinetabinnumlist/)(bool) | Underline Following Character Following Numbering. |
| [set_UseAltKinsokuLineBreakRules](./set_usealtkinsokulinebreakrules/)(bool) | Use Alternate Set of East Asian Line Breaking Rules. |
| [set_UseAnsiKerningPairs](./set_useansikerningpairs/)(bool) | Use ANSI Kerning Pairs from [Fonts](../../aspose.words.fonts/). |
| [set_UseFELayout](./set_usefelayout/)(bool) | Do Not Bypass East Asian/Complex Script [Layout](../../aspose.words.layout/) Code. |
| [set_UseNormalStyleForList](./set_usenormalstyleforlist/)(bool) | Do Not Automatically Apply List [Paragraph](../../aspose.words/paragraph/)[Style](../../aspose.words/style/) To Bulleted/Numbered Text. |
| [set_UsePrinterMetrics](./set_useprintermetrics/)(bool) | Use Printer Metrics To Display Documents. |
| [set_UseSingleBorderforContiguousCells](./set_usesingleborderforcontiguouscells/)(bool) | Use Simplified Rules For Table [Border](../../aspose.words/border/) Conflicts. |
| [set_UseWord2002TableStyleRules](./set_useword2002tablestylerules/)(bool) | Emulate Word 2002 Table [Style](../../aspose.words/style/) Rules. |
| [set_UseWord2010TableStyleRules](./set_useword2010tablestylerules/)(bool) | Specifies to use Word2010 table style rules. |
| [set_UseWord97LineBreakRules](./set_useword97linebreakrules/)(bool) | Emulate Word 97 East Asian Line Breaking. |
| [set_WPJustification](./set_wpjustification/)(bool) | Emulate WordPerfect 6.x [Paragraph](../../aspose.words/paragraph/) Justification. |
| [set_WPSpaceWidth](./set_wpspacewidth/)(bool) | Specifies whether to set the width of a space as is done in WordPerfect 5.x. |
| [set_WrapTrailSpaces](./set_wraptrailspaces/)(bool) | Line Wrap Trailing Spaces. |
| static [Type](./type/)() |  |

## Examples



Shows how to set an OOXML compliance specification for a saved document to adhere to. 
```cpp
auto doc = System::MakeObject<Aspose::Words::Document>();
auto builder = System::MakeObject<Aspose::Words::DocumentBuilder>(doc);

// If we configure compatibility options to comply with Microsoft Word 2003,
// inserting an image will define its shape using VML.
doc->get_CompatibilityOptions()->OptimizeFor(MsWordVersion::Word2003);
builder->InsertImage(get_ImageDir() + u"Transparent background logo.png");

ASSERT_EQ(ShapeMarkupLanguage::Vml, (System::ExplicitCast<Aspose::Words::Drawing::Shape>(doc->GetChild(NodeType::Shape, 0, true)))->get_MarkupLanguage());

// The "ISO/IEC 29500:2008" OOXML standard does not support VML shapes.
// If we set the "Compliance" property of the SaveOptions object to "OoxmlCompliance.Iso29500_2008_Strict",
// any document we save while passing this object will have to follow that standard.
auto saveOptions = System::MakeObject<Aspose::Words::Saving::OoxmlSaveOptions>();
saveOptions->set_Compliance(OoxmlCompliance::Iso29500_2008_Strict);
saveOptions->set_SaveFormat(SaveFormat::Docx);

doc->Save(get_ArtifactsDir() + u"OoxmlSaveOptions.Iso29500Strict.docx", saveOptions);

// Our saved document defines the shape using DML to adhere to the "ISO/IEC 29500:2008" OOXML standard.
doc = System::MakeObject<Aspose::Words::Document>(System::String(get_ArtifactsDir() + u"OoxmlSaveOptions.Iso29500Strict.docx"));

ASSERT_EQ(ShapeMarkupLanguage::Dml, (System::ExplicitCast<Aspose::Words::Drawing::Shape>(doc->GetChild(NodeType::Shape, 0, true)))->get_MarkupLanguage());
```


Shows how to vertically align the text contents of a text box. 
```cpp
auto doc = System::MakeObject<Aspose::Words::Document>();
auto builder = System::MakeObject<Aspose::Words::DocumentBuilder>(doc);

System::SharedPtr<Aspose::Words::Drawing::Shape> shape = builder->InsertShape(ShapeType::TextBox, static_cast<double>(200), static_cast<double>(200));

// Set the "VerticalAnchor" property to "TextBoxAnchor.Top" to
// align the text in this text box with the top side of the shape.
// Set the "VerticalAnchor" property to "TextBoxAnchor.Middle" to
// align the text in this text box to the center of the shape.
// Set the "VerticalAnchor" property to "TextBoxAnchor.Bottom" to
// align the text in this text box to the bottom of the shape.
shape->get_TextBox()->set_VerticalAnchor(verticalAnchor);

builder->MoveTo(shape->get_FirstParagraph());
builder->Write(u"Hello world!");

// The vertical aligning of text inside text boxes is available from Microsoft Word 2007 onwards.
doc->get_CompatibilityOptions()->OptimizeFor(MsWordVersion::Word2007);
doc->Save(get_ArtifactsDir() + u"Shape.VerticalAnchor.docx");
```

## See Also

* Namespace [Aspose::Words::Settings](../)
* Library [Aspose.Words for C++](../../)
