Compatibility
内容
[
隐藏
]Compatibility enumeration
指定兼容性选项的名称。
public enum Compatibility
价值观
| 姓名 | 价值 | 描述 |
|---|---|---|
| NoTabHangInd | 0 | 无制表符挂起缩进 |
| NoSpaceRaiseLower | 1 | 无空间 升高 降低 |
| SuppressSpBfAfterPgBrk | 2 | 取消段落分隔符前的空格 |
| WrapTrailSpaces | 3 | 换行尾随空格 |
| PrintColBlack | 4 | 打印列背景 |
| NoColumnBalance | 5 | 无柱平衡 |
| ConvMailMergeEsc | 6 | 转换邮件合并转义符 |
| SuppressTopSpacing | 7 | 抑制顶部间距 |
| UseSingleBorderforContiguousCells | 8 | 对连续单元格使用单边框 |
| TransparentMetafiles | 9 | 透明元文件 |
| ShowBreaksInFrames | 10 | 在框架中显示中断 |
| SwapBordersOddFacingPgs | 11 | 交换奇数页的边框 |
| DoNotLeaveBackslashAlone | 12 | 不要单独留下反斜杠 |
| DoNotExpandOnShiftReturn | 13 | Shift Return 键不展开 |
| UlTrailSpace | 14 | 下划线尾随空格 |
| BalanceSingleByteDoubleByteWidth | 15 | 平衡单字节和双字节宽度 |
| SuppressTopSpacingAtTopOfPage | 16 | 抑制 WordPerfect 中的顶部行距 |
| SpacingInWholePoints | 17 | 整数点间距 |
| PrintBodyTextBeforeHeader | 18 | 在页眉前打印正文 |
| NoLeading | 19 | 无前导 |
| SpaceForUL | 20 | 下划线空格 |
| MWSmallCaps | 21 | MW 小型大写字母 |
| SuppressTopLineSpacingWP | 22 | 抑制 WordPerfect 中的顶部行距 |
| TruncateFontHeightLikeWP6 | 23 | 像 WordPerfect 6 一样截断字体高度 |
| SubFontBySize | 24 | 按大小替换字体 |
| LineWrapLikeWord6 | 25 | 像 Word 一样换行 6 |
| DoNotSuppressParagraphBorder | 26 | 不抑制段落边框 |
| NoExtraLineSpacing | 27 | 无额外行距 |
| SuppressBottomSpacing | 28 | 抑制底部间距 |
| WPSpaceWidth | 29 | WordPerfect 空间宽度 |
| WPJustification | 30 | WordPerfect 对齐 |
| UsePrinterMetrics | 31 | 使用打印机指标 |
| ShapeLayoutLikeWW8 | 32 | 形状布局类似 Word 2000 |
| FootnoteLayoutLikeWW8 | 33 | 脚注布局类似 Word 2000 |
| DoNotUseHtmlParagraphAutoSpacing | 34 | 请勿使用 HTML 段落自动间距 |
| AdjustLineHeightInTable | 35 | 调整表格行高 |
| ForgetLastTabAlignment | 36 | 忘记最后一个标签对齐 |
| AutoSpaceLikeWord95 | 37 | 自动空格类似 Word 95 |
| AlignTableRowByRow | 38 | 按规则对齐表格行 |
| LayoutRawTableWidth | 39 | 布局原始表格宽度 |
| LayoutTableRowsApart | 40 | 布局表格行分开 |
| UseWord97LineBreakRules | 41 | 使用 Word 97 换行规则 |
| DoNotBreakWrappedTables | 42 | 请勿破坏包装的表格 |
| doNotSnapToGridInCell | 43 | 不要对齐单元格中的网格 |
| SelectFldWithFirstOrLastChar | 44 | 选择具有第一个或最后一个字符的字段 |
| ApplyBreakingRules | 45 | 应用违反规则 |
| DoNotWrapTextWithPunct | 46 | 不要用标点符号换行 |
| DoNotUseEastAsianBreakRules | 47 | 请勿使用东亚中断规则 |
| UseWord2002TableStyleRules | 48 | 使用 Word 2002 表格样式规则 |
| GrowAutofit | 49 | 自动适应增长 |
| UseNormalStyleForList | 50 | 使用列表的普通样式 |
| DoNotUseIndentAsNumberingTabStop | 51 | 不使用缩进作为编号制表位 |
| UseAltKinsokuLineBreakRules | 52 | 使用 Alt 避头尾换行规则 |
| AllowSpaceOfSameStyleInTable | 53 | 允许表格中相同样式的空间 |
| DoNotSuppressIndentation | 54 | 不抑制缩进 |
| DoNotAutofitConstrainedTables | 55 | 不自动调整受约束的表格 |
| AutofitToFirstFixedWidthCell | 56 | 自动调整至第一个固定宽度单元格 |
| UnderlineTabInNumList | 57 | 编号列表中的下划线制表符 |
| DisplayHangulFixedWidth | 58 | 显示韩语固定宽度 |
| SplitPgBreakAndParaMark | 59 | 分割分页符和段落标记 |
| DoNotVertAlignCellWithSp | 60 | 不要垂直对齐单元格并留出间距 |
| DoNotBreakConstrainedForcedTable | 61 | 不要破坏受约束的强制表 |
| DoNotVertAlignInTxbx | 62 | 文本框不垂直对齐 |
| UseAnsiKerningPairs | 63 | 使用 ANSI 字距调整对 |
| CachedColBalance | 64 | 缓存列平衡 |
| UseFELayout | 65 | 使用远东布局 |
| UICompat97To2003 | 66 | 从 Word 97 到 Word 2003 的用户界面兼容模式 |
| OverrideTableStyleFontSizeAndJustification | 67 | 覆盖表格样式字体大小和对齐方式 |
| DisableOpenTypeFontFormattingFeatures | 68 | 禁用 OpenType 字体格式化功能 |
| SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning | 69 | 交换内部和外部以进行镜像缩进和相对定位 |
| UseWord2010TableStyleRules | 70 | 使用 Word 2010 表格样式规则 |
例子
展示如何针对不同版本的 Microsoft Word 优化文档。
public void OptimizeFor()
{
Document doc = new Document();
// 该对象包含每个文档独有的标志的详尽列表
// 使我们能够实现与旧版本 Microsoft Word 的向后兼容性。
CompatibilityOptions options = doc.CompatibilityOptions;
// 打印空白文档的默认设置。
Console.WriteLine("\nDefault optimization settings:");
PrintCompatibilityOptions(options);
// 我们可以通过 Microsoft Word 中的“文件”->“选项”->“高级”->“兼容性选项...”访问这些设置。
doc.Save(ArtifactsDir + "CompatibilityOptions.OptimizeFor.DefaultSettings.docx");
// 我们可以使用 OptimizeFor 方法来确保与特定 Microsoft Word 版本的最佳兼容性。
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2010);
Console.WriteLine("\nOptimized for Word 2010:");
PrintCompatibilityOptions(options);
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2000);
Console.WriteLine("\nOptimized for Word 2000:");
PrintCompatibilityOptions(options);
}
/// <summary>
/// 按状态对文档兼容性选项对象中的所有标志进行分组,然后打印每个组。
/// </summary>
private static void PrintCompatibilityOptions(CompatibilityOptions options)
{
IList<string> enabledOptions = new List<string>();
IList<string> disabledOptions = new List<string>();
AddOptionName(options.AdjustLineHeightInTable, "AdjustLineHeightInTable", enabledOptions, disabledOptions);
AddOptionName(options.AlignTablesRowByRow, "AlignTablesRowByRow", enabledOptions, disabledOptions);
AddOptionName(options.AllowSpaceOfSameStyleInTable, "AllowSpaceOfSameStyleInTable", enabledOptions, disabledOptions);
AddOptionName(options.ApplyBreakingRules, "ApplyBreakingRules", enabledOptions, disabledOptions);
AddOptionName(options.AutoSpaceLikeWord95, "AutoSpaceLikeWord95", enabledOptions, disabledOptions);
AddOptionName(options.AutofitToFirstFixedWidthCell, "AutofitToFirstFixedWidthCell", enabledOptions, disabledOptions);
AddOptionName(options.BalanceSingleByteDoubleByteWidth, "BalanceSingleByteDoubleByteWidth", enabledOptions, disabledOptions);
AddOptionName(options.CachedColBalance, "CachedColBalance", enabledOptions, disabledOptions);
AddOptionName(options.ConvMailMergeEsc, "ConvMailMergeEsc", enabledOptions, disabledOptions);
AddOptionName(options.DisableOpenTypeFontFormattingFeatures, "DisableOpenTypeFontFormattingFeatures", enabledOptions, disabledOptions);
AddOptionName(options.DisplayHangulFixedWidth, "DisplayHangulFixedWidth", enabledOptions, disabledOptions);
AddOptionName(options.DoNotAutofitConstrainedTables, "DoNotAutofitConstrainedTables", enabledOptions, disabledOptions);
AddOptionName(options.DoNotBreakConstrainedForcedTable, "DoNotBreakConstrainedForcedTable", enabledOptions, disabledOptions);
AddOptionName(options.DoNotBreakWrappedTables, "DoNotBreakWrappedTables", enabledOptions, disabledOptions);
AddOptionName(options.DoNotExpandShiftReturn, "DoNotExpandShiftReturn", enabledOptions, disabledOptions);
AddOptionName(options.DoNotLeaveBackslashAlone, "DoNotLeaveBackslashAlone", enabledOptions, disabledOptions);
AddOptionName(options.DoNotSnapToGridInCell, "DoNotSnapToGridInCell", enabledOptions, disabledOptions);
AddOptionName(options.DoNotSuppressIndentation, "DoNotSnapToGridInCell", enabledOptions, disabledOptions);
AddOptionName(options.DoNotSuppressParagraphBorders, "DoNotSuppressParagraphBorders", enabledOptions, disabledOptions);
AddOptionName(options.DoNotUseEastAsianBreakRules, "DoNotUseEastAsianBreakRules", enabledOptions, disabledOptions);
AddOptionName(options.DoNotUseHTMLParagraphAutoSpacing, "DoNotUseHTMLParagraphAutoSpacing", enabledOptions, disabledOptions);
AddOptionName(options.DoNotUseIndentAsNumberingTabStop, "DoNotUseIndentAsNumberingTabStop", enabledOptions, disabledOptions);
AddOptionName(options.DoNotVertAlignCellWithSp, "DoNotVertAlignCellWithSp", enabledOptions, disabledOptions);
AddOptionName(options.DoNotVertAlignInTxbx, "DoNotVertAlignInTxbx", enabledOptions, disabledOptions);
AddOptionName(options.DoNotWrapTextWithPunct, "DoNotWrapTextWithPunct", enabledOptions, disabledOptions);
AddOptionName(options.FootnoteLayoutLikeWW8, "FootnoteLayoutLikeWW8", enabledOptions, disabledOptions);
AddOptionName(options.ForgetLastTabAlignment, "ForgetLastTabAlignment", enabledOptions, disabledOptions);
AddOptionName(options.GrowAutofit, "GrowAutofit", enabledOptions, disabledOptions);
AddOptionName(options.LayoutRawTableWidth, "LayoutRawTableWidth", enabledOptions, disabledOptions);
AddOptionName(options.LayoutTableRowsApart, "LayoutTableRowsApart", enabledOptions, disabledOptions);
AddOptionName(options.LineWrapLikeWord6, "LineWrapLikeWord6", enabledOptions, disabledOptions);
AddOptionName(options.MWSmallCaps, "MWSmallCaps", enabledOptions, disabledOptions);
AddOptionName(options.NoColumnBalance, "NoColumnBalance", enabledOptions, disabledOptions);
AddOptionName(options.NoExtraLineSpacing, "NoExtraLineSpacing", enabledOptions, disabledOptions);
AddOptionName(options.NoLeading, "NoLeading", enabledOptions, disabledOptions);
AddOptionName(options.NoSpaceRaiseLower, "NoSpaceRaiseLower", enabledOptions, disabledOptions);
AddOptionName(options.NoTabHangInd, "NoTabHangInd", enabledOptions, disabledOptions);
AddOptionName(options.OverrideTableStyleFontSizeAndJustification, "OverrideTableStyleFontSizeAndJustification", enabledOptions, disabledOptions);
AddOptionName(options.PrintBodyTextBeforeHeader, "PrintBodyTextBeforeHeader", enabledOptions, disabledOptions);
AddOptionName(options.PrintColBlack, "PrintColBlack", enabledOptions, disabledOptions);
AddOptionName(options.SelectFldWithFirstOrLastChar, "SelectFldWithFirstOrLastChar", enabledOptions, disabledOptions);
AddOptionName(options.ShapeLayoutLikeWW8, "ShapeLayoutLikeWW8", enabledOptions, disabledOptions);
AddOptionName(options.ShowBreaksInFrames, "ShowBreaksInFrames", enabledOptions, disabledOptions);
AddOptionName(options.SpaceForUL, "SpaceForUL", enabledOptions, disabledOptions);
AddOptionName(options.SpacingInWholePoints, "SpacingInWholePoints", enabledOptions, disabledOptions);
AddOptionName(options.SplitPgBreakAndParaMark, "SplitPgBreakAndParaMark", enabledOptions, disabledOptions);
AddOptionName(options.SubFontBySize, "SubFontBySize", enabledOptions, disabledOptions);
AddOptionName(options.SuppressBottomSpacing, "SuppressBottomSpacing", enabledOptions, disabledOptions);
AddOptionName(options.SuppressSpBfAfterPgBrk, "SuppressSpBfAfterPgBrk", enabledOptions, disabledOptions);
AddOptionName(options.SuppressSpacingAtTopOfPage, "SuppressSpacingAtTopOfPage", enabledOptions, disabledOptions);
AddOptionName(options.SuppressTopSpacing, "SuppressTopSpacing", enabledOptions, disabledOptions);
AddOptionName(options.SuppressTopSpacingWP, "SuppressTopSpacingWP", enabledOptions, disabledOptions);
AddOptionName(options.SwapBordersFacingPgs, "SwapBordersFacingPgs", enabledOptions, disabledOptions);
AddOptionName(options.SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning, "SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning", enabledOptions, disabledOptions);
AddOptionName(options.TransparentMetafiles, "TransparentMetafiles", enabledOptions, disabledOptions);
AddOptionName(options.TruncateFontHeightsLikeWP6, "TruncateFontHeightsLikeWP6", enabledOptions, disabledOptions);
AddOptionName(options.UICompat97To2003, "UICompat97To2003", enabledOptions, disabledOptions);
AddOptionName(options.UlTrailSpace, "UlTrailSpace", enabledOptions, disabledOptions);
AddOptionName(options.UnderlineTabInNumList, "UnderlineTabInNumList", enabledOptions, disabledOptions);
AddOptionName(options.UseAltKinsokuLineBreakRules, "UseAltKinsokuLineBreakRules", enabledOptions, disabledOptions);
AddOptionName(options.UseAnsiKerningPairs, "UseAnsiKerningPairs", enabledOptions, disabledOptions);
AddOptionName(options.UseFELayout, "UseFELayout", enabledOptions, disabledOptions);
AddOptionName(options.UseNormalStyleForList, "UseNormalStyleForList", enabledOptions, disabledOptions);
AddOptionName(options.UsePrinterMetrics, "UsePrinterMetrics", enabledOptions, disabledOptions);
AddOptionName(options.UseSingleBorderforContiguousCells, "UseSingleBorderforContiguousCells", enabledOptions, disabledOptions);
AddOptionName(options.UseWord2002TableStyleRules, "UseWord2002TableStyleRules", enabledOptions, disabledOptions);
AddOptionName(options.UseWord2010TableStyleRules, "UseWord2010TableStyleRules", enabledOptions, disabledOptions);
AddOptionName(options.UseWord97LineBreakRules, "UseWord97LineBreakRules", enabledOptions, disabledOptions);
AddOptionName(options.WPJustification, "WPJustification", enabledOptions, disabledOptions);
AddOptionName(options.WPSpaceWidth, "WPSpaceWidth", enabledOptions, disabledOptions);
AddOptionName(options.WrapTrailSpaces, "WrapTrailSpaces", enabledOptions, disabledOptions);
Console.WriteLine("\tEnabled options:");
foreach (string optionName in enabledOptions)
Console.WriteLine($"\t\t{optionName}");
Console.WriteLine("\tDisabled options:");
foreach (string optionName in disabledOptions)
Console.WriteLine($"\t\t{optionName}");
}
private static void AddOptionName(Boolean option, String optionName, IList<string> enabledOptions, IList<string> disabledOptions)
{
if (option)
enabledOptions.Add(optionName);
else
disabledOptions.Add(optionName);
}