CompatibilityOptions

CompatibilityOptions class

Innehåller kompatibilitetsalternativ (det vill säga användarinställningarna som angetts påKompatibilitet fliken avAlternativ dialogruta i Microsoft Word).

För att lära dig mer, besökIdentifiera filformat och kontrollera formatkompatibilitet dokumentationsartikel.

public class CompatibilityOptions

Egenskaper

namnBeskrivning
AdjustLineHeightInTable { get; set; }Lägg till rutnätsavstånd för dokument till linjer i tabellceller.
AlignTablesRowByRow { get; set; }Justera tabellrader oberoende av varandra.
AllowSpaceOfSameStyleInTable { get; set; }Tillåt kontextuellt avstånd mellan stycken i tabeller.
ApplyBreakingRules { get; set; }Använd äldre etiopiska och amhariska radbrytningsregler.
AutofitToFirstFixedWidthCell { get; set; }Tillåt tabellkolumner att överskrida önskad bredd för ingående celler.
AutoSpaceLikeWord95 { get; set; }Emulera Word 95 teckenavstånd med full bredd.
BalanceSingleByteDoubleByteWidth { get; set; }Balansera enkelbyte- och dubbelbytetecken.
CachedColBalance { get; set; }Använd cachad styckeinformation för kolumnbalansering.
ConvMailMergeEsc { get; set; }Behandla omvänt snedstreck som två citattecken.
DisableOpenTypeFontFormattingFeatures { get; set; }Anger att OpenType-teckensnittsformateringsfunktioner ska inaktiveras.
DisplayHangulFixedWidth { get; set; }Använd alltid fast bredd för Hangul-tecken.
DoNotAutofitConstrainedTables { get; set; }Anpassa inte tabeller automatiskt så att de passar bredvid radbrytna objekt.
DoNotBreakConstrainedForcedTable { get; set; }Bryt inte tabellrader runt flytande tabeller.
DoNotBreakWrappedTables { get; set; }Tillåt inte att flytande tabeller bryts över sidor.
DoNotExpandShiftReturn { get; set; }Rader som slutar på mjuk radbrytning ska inte justeras.
DoNotLeaveBackslashAlone { get; set; }Konvertera omvänt snedstreck till yentecken när det anges.
DoNotSnapToGridInCell { get; set; }Fäst inte mot dokumentrutnät i tabellceller med objekt.
DoNotSuppressIndentation { get; set; }Ignorera inte flytande objekt när du beräknar styckeindrag.
DoNotSuppressParagraphBorders { get; set; }Dölj inte styckekanter bredvid ramar.
DoNotUseEastAsianBreakRules { get; set; }Komprimera inte komprimerbara tecken när du använder dokumentrutnät.
DoNotUseHTMLParagraphAutoSpacing { get; set; }Använd fast styckeavstånd för automatisk HTML-inställning.
DoNotUseIndentAsNumberingTabStop { get; set; }Ignorera hängande indrag när tabbstopp skapas efter numrering.
DoNotVertAlignCellWithSp { get; set; }Justera inte celler som innehåller flytande objekt vertikalt.
DoNotVertAlignInTxbx { get; set; }Ignorera vertikal justering i textrutor.
DoNotWrapTextWithPunct { get; set; }Tillåt inte hängande interpunktion med teckenrutnät.
FootnoteLayoutLikeWW8 { get; set; }Emulera fotnotsplacering i Word 6.x/95/97.
ForgetLastTabAlignment { get; set; }Ignorera bredden på sista tabbstoppet vid justering av stycke om det inte är vänsterjusterat.
GrowAutofit { get; set; }Tillåt att tabeller automatiskt anpassas till sidmarginaler.
LayoutRawTableWidth { get; set; }Ignorera avstånd före tabell när du bestämmer om tabellen ska radbryta flytande objekt.
LayoutTableRowsApart { get; set; }Tillåt tabellrader att radbryta inbäddade objekt oberoende av varandra.
LineWrapLikeWord6 { get; set; }Emulera radbrytning i Word 6.0 för östasiatisk text.
MWSmallCaps { get; set; }Emulera Word 5.x för Macintosh med versaler.
NoColumnBalance { get; set; }Balansera inte textkolumner inom ett avsnitt.
NoExtraLineSpacing { get; set; }Centrera inte innehållet på rader med exakt radhöjd.
NoLeading { get; set; }Lägg inte till radavstånd mellan textrader.
NoSpaceRaiseLower { get; set; }Öka inte radhöjden för upphöjd/sänkt text.
NoTabHangInd { get; set; }Skapa inte anpassat tabbstopp för hängande indrag.
OverrideTableStyleFontSizeAndJustification { get; set; }Anger hur dokumentets stilhierarki utvärderas.
PrintBodyTextBeforeHeader { get; set; }Skriv ut brödtext före innehåll i sidhuvud/sidfot.
PrintColBlack { get; set; }Skriv ut färger som svartvitt utan dithering.
SelectFldWithFirstOrLastChar { get; set; }Välj fält när första eller sista tecknet är valt.
ShapeLayoutLikeWW8 { get; set; }Emulera Word 97-text som radbryts runt flytande objekt.
ShowBreaksInFrames { get; set; }Visa sid-/kolumnbrytningar i ramar.
SpaceForUL { get; set; }Lägg till ytterligare utrymme under baslinjen för understruken östasiatisk text.
SpacingInWholePoints { get; set; }Expandera/komprimera endast text med hela punkter.
SplitPgBreakAndParaMark { get; set; }Flytta alltid stycketecknet till sidan efter en sidbrytning.
SubFontBySize { get; set; }Öka prioriteten för teckenstorlek vid teckensnittsersättning.
SuppressBottomSpacing { get; set; }Ignorera exakt radhöjd för sista raden på sidan.
SuppressSpacingAtTopOfPage { get; set; }Ignorera minsta radhöjd för första raden på sidan.
SuppressSpBfAfterPgBrk { get; set; }Använd inte mellanslag före första raden efter en sidbrytning.
SuppressTopSpacing { get; set; }Ignorera minsta och exakta radhöjd för första raden på sidan.
SuppressTopSpacingWP { get; set; }Emulera radavstånd i WordPerfect 5.x.
SwapBordersFacingPgs { get; set; }Byt styckekanter på udda sidor.
SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning { get; set; }Anger att insida och utsida ska bytas för spegelvända indrag och relativ positionering.
TransparentMetafiles { get; set; }Anger att området bakom metafilbilder inte ska tömmas.
TruncateFontHeightsLikeWP6 { get; set; }Emulera WordPerfect 6.x teckensnittshöjdsberäkning.
UICompat97To2003 { get; set; }True för att inaktivera UI-funktionalitet som inte är kompatibel med Word97-2003. Standardvärdet ärfalsk .
UlTrailSpace { get; set; }Stryk under alla efterföljande mellanslag.
UnderlineTabInNumList { get; set; }Understrykning av tecken efter numrering.
UseAltKinsokuLineBreakRules { get; set; }Använd alternativa uppsättningar östasiatiska radbrytningsregler.
UseAnsiKerningPairs { get; set; }Använd ANSI-kerningpar från teckensnitt.
UseFELayout { get; set; }Hoppa inte över östasiatisk/komplex skriptlayoutkod.
UseNormalStyleForList { get; set; }Använd inte automatiskt liststyckesformat för punktlistad/numrerad text.
UsePrinterMetrics { get; set; }Använd skrivarmätvärden för att visa dokument.
UseSingleBorderforContiguousCells { get; set; }Använd förenklade regler för tabellkantkonflikter.
UseWord2002TableStyleRules { get; set; }Emulera tabellformatregler för Word 2002.
UseWord2010TableStyleRules { get; set; }Anger att Word2010-tabellformatregler ska användas.
UseWord97LineBreakRules { get; set; }Emulera Word 97 östasiatisk radbrytning.
WPJustification { get; set; }Emulera styckejustering i WordPerfect 6.x.
WPSpaceWidth { get; set; }Anger om bredden på ett mellanslag ska ställas in som i WordPerfect 5.x.
WrapTrailSpaces { get; set; }Linjeomslag efterföljande mellanslag.

Metoder

namnBeskrivning
OptimizeFor(MsWordVersion)Gör det möjligt att optimera dokumentinnehållet samt standardbeteendet för Aspose.Words för specifika versioner av MS Word.

Exempel

Visar hur man justerar textinnehållet i en textruta vertikalt.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Shape shape = builder.InsertShape(ShapeType.TextBox, 200, 200);

// Ställ in egenskapen "VerticalAnchor" till "TextBoxAnchor.Top" för att
// justera texten i den här textrutan med formens översida.
// Sätt egenskapen "VerticalAnchor" till "TextBoxAnchor.Middle" till
// justera texten i den här textrutan till formens mitt.
// Sätt egenskapen "VerticalAnchor" till "TextBoxAnchor.Bottom" för att
// justera texten i den här textrutan mot formens nederkant.
shape.TextBox.VerticalAnchor = verticalAnchor;

builder.MoveTo(shape.FirstParagraph);
builder.Write("Hello world!");

// Vertikal justering av text inuti textrutor är tillgänglig från och med Microsoft Word 2007.
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2007);
doc.Save(ArtifactsDir + "Shape.VerticalAnchor.docx");

Visar hur man ställer in en OOXML-efterlevnadsspecifikation som ett sparat dokument ska följa.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Om vi konfigurerar kompatibilitetsalternativ så att de följer Microsoft Word 2003,
// att infoga en bild definierar dess form med hjälp av VML.
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2003);
builder.InsertImage(ImageDir + "Transparent background logo.png");

Assert.AreEqual(ShapeMarkupLanguage.Vml, ((Shape)doc.GetChild(NodeType.Shape, 0, true)).MarkupLanguage);

// OOXML-standarden "ISO/IEC 29500:2008" stöder inte VML-former.
// Om vi ställer in egenskapen "Compliance" för SaveOptions-objektet till "OoxmlCompliance.Iso29500_2008_Strict",
 // alla dokument vi sparar när vi skickar detta objekt måste följa den standarden.
OoxmlSaveOptions saveOptions = new OoxmlSaveOptions
{
    Compliance = OoxmlCompliance.Iso29500_2008_Strict,
    SaveFormat = SaveFormat.Docx
};

doc.Save(ArtifactsDir + "OoxmlSaveOptions.Iso29500Strict.docx", saveOptions);

// Vårt sparade dokument definierar formen med hjälp av DML för att följa OOXML-standarden "ISO/IEC 29500:2008".
doc = new Document(ArtifactsDir + "OoxmlSaveOptions.Iso29500Strict.docx");

Assert.AreEqual(ShapeMarkupLanguage.Dml, ((Shape)doc.GetChild(NodeType.Shape, 0, true)).MarkupLanguage);

Visar hur man optimerar dokumentet för olika versioner av Microsoft Word.

public void OptimizeFor()
{
    Document doc = new Document();

    // Detta objekt innehåller en omfattande lista med flaggor som är unika för varje dokument
    // som gör att vi kan underlätta bakåtkompatibilitet med äldre versioner av Microsoft Word.
    CompatibilityOptions options = doc.CompatibilityOptions;

    // Skriv ut standardinställningarna för ett tomt dokument.
    Console.WriteLine("\nDefault optimization settings:");
    PrintCompatibilityOptions(options);

    // Vi kan komma åt dessa inställningar i Microsoft Word via "Arkiv" -> "Alternativ" -> "Avancerat" -> "Kompatibilitetsalternativ för...".
    doc.Save(ArtifactsDir + "CompatibilityOptions.OptimizeFor.DefaultSettings.docx");

    // Vi kan använda OptimizeFor-metoden för att säkerställa optimal kompatibilitet med en specifik Microsoft Word-version.
    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>
/// Grupperar alla flaggor i ett dokuments kompatibilitetsalternativsobjekt efter tillstånd och skriver sedan ut varje grupp.
/// </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);
}

Se även