CompatibilityOptions

CompatibilityOptions class

Uyumluluk seçeneklerini içerir (yani, bilgisayarda girilen kullanıcı tercihleri)Uyumluluk sekmesiSeçenekler Microsoft Word’deki iletişim kutusu).

Daha fazla bilgi edinmek için şu adresi ziyaret edin:Dosya Biçimini Algıla ve Biçim Uyumluluğunu Kontrol Et belgeleme makalesi.

public class CompatibilityOptions

Özellikleri

İsimTanım
AdjustLineHeightInTable { get; set; }Tablo Hücrelerindeki Satırlara Belge Izgara Çizgisi Aralıklarını Ekle.
AlignTablesRowByRow { get; set; }Tablo Satırlarını Bağımsız Olarak Hizala.
AllowSpaceOfSameStyleInTable { get; set; }Tablolardaki Paragrafların Bağlamsal Aralıklarına İzin Ver.
ApplyBreakingRules { get; set; }Eski Etiyopya ve Amharca Satır Sonu Kurallarını Kullan.
AutofitToFirstFixedWidthCell { get; set; }Tablo Sütunlarının Bileşen Hücrelerinin Tercih Edilen Genişliklerini Aşmasına İzin Ver.
AutoSpaceLikeWord95 { get; set; }Word 95 Tam Genişlikte Karakter Aralığını Taklit Et.
BalanceSingleByteDoubleByteWidth { get; set; }Tek Bayt ve Çift Bayt Karakterleri Dengeleyin.
CachedColBalance { get; set; }Sütun Dengeleme için Önbelleğe Alınmış Paragraf Bilgilerini Kullan.
ConvMailMergeEsc { get; set; }Ters eğik çizgi tırnak işaretini iki tırnak işareti olarak kabul et.
DisableOpenTypeFontFormattingFeatures { get; set; }OpenType yazı tipi biçimlendirme özelliklerini devre dışı bırakmayı belirtir.
DisplayHangulFixedWidth { get; set; }Hangul Karakterleri için Her Zaman Sabit Genişlik Kullanın.
DoNotAutofitConstrainedTables { get; set; }Tabloları Sarılmış Nesnelerin Yanına Sığacak Şekilde Otomatik Olarak Sığdırmayın.
DoNotBreakConstrainedForcedTable { get; set; }Yüzen Tabloların Etrafındaki Tablo Satırlarını Bölmeyin.
DoNotBreakWrappedTables { get; set; }Yüzen Tabloların Sayfalar Arasında Bölünmesine İzin Vermeyin.
DoNotExpandShiftReturn { get; set; }Yumuşak Satır Sonuyla Biten Satırları Yaslamayın.
DoNotLeaveBackslashAlone { get; set; }Girildiğinde Ters Eğik Çizgiyi Yen İşaretine Dönüştür.
DoNotSnapToGridInCell { get; set; }Nesneler içeren Tablo Hücrelerinde Belge Izgarasına Yapışmayın.
DoNotSuppressIndentation { get; set; }Paragraf Girintisini Hesaplarken Kayan Nesneleri Göz Ardı Etmeyin.
DoNotSuppressParagraphBorders { get; set; }Çerçevelerin Yanındaki Paragraf Kenarlıklarını Gizlemeyin.
DoNotUseEastAsianBreakRules { get; set; }Belge Izgarası Kullanılırken Sıkıştırılabilir Karakterleri Sıkıştırmayın.
DoNotUseHTMLParagraphAutoSpacing { get; set; }HTML Otomatik Ayarı için Sabit Paragraf Aralığı Kullan.
DoNotUseIndentAsNumberingTabStop { get; set; }Numaralandırmadan Sonra Sekme Durağı Oluştururken Asılı Girintiyi Yoksay.
DoNotVertAlignCellWithSp { get; set; }Kayan Nesneler İçeren Hücreleri Dikey Olarak Hizalamayın.
DoNotVertAlignInTxbx { get; set; }Metin Kutularındaki Dikey Hizalamayı Yoksay.
DoNotWrapTextWithPunct { get; set; }Karakter Izgarasında Asılı Noktalama İşaretlerine İzin Vermeyin.
FootnoteLayoutLikeWW8 { get; set; }Word 6.x/95/97 Dipnot Yerleşimini Taklit Et.
ForgetLastTabAlignment { get; set; }Paragrafı Hizalarken Son Sekme Durağının Genişliğini Yoksay, Sola Hizalı Değilse.
GrowAutofit { get; set; }Tabloların Sayfa Kenar Boşluklarına Otomatik Olarak Sığmasına İzin Ver.
LayoutRawTableWidth { get; set; }Tablonun Kayan Nesneyi Sarması Gerekip Gerekmediğine Karar Verirken Tablodan Önceki Boşluğu Yoksay.
LayoutTableRowsApart { get; set; }Tablo Satırlarının Satır İçi Nesneleri Bağımsız Olarak Sarmasına İzin Ver.
LineWrapLikeWord6 { get; set; }Doğu Asya Metinleri için Word 6.0 Satır Kaydırma’yı taklit edin.
MWSmallCaps { get; set; }Macintosh Küçük Harf Biçimlendirmesi için Word 5.x’i taklit edin.
NoColumnBalance { get; set; }Bir Bölümdeki Metin Sütunlarını Dengelemeyin.
NoExtraLineSpacing { get; set; }İçeriği Tam Satır Yüksekliğine Sahip Satırlarda Ortalamayın.
NoLeading { get; set; }Metnin Satır Aralarına Ön Çizgi Eklemeyin.
NoSpaceRaiseLower { get; set; }Yükseltilmiş/Alçaltılmış Metin için Satır Yüksekliğini Artırmayın.
NoTabHangInd { get; set; }Asılı Girinti için Özel Sekme Durağı Oluşturmayın.
OverrideTableStyleFontSizeAndJustification { get; set; }Belgenin stil hiyerarşisinin nasıl değerlendirileceğini belirtir.
PrintBodyTextBeforeHeader { get; set; }Başlık/Altbilgi İçeriklerinden Önce Gövde Metnini Yazdır.
PrintColBlack { get; set; }Renkleri Karartma Olmadan Siyah Beyaz Olarak Yazdırın.
SelectFldWithFirstOrLastChar { get; set; }İlk veya Son Karakter Seçildiğinde Alanı Seç.
ShapeLayoutLikeWW8 { get; set; }Yüzen Nesnelerin Etrafında Word 97 Metnini Sarma Taklidi.
ShowBreaksInFrames { get; set; }Çerçevelerde Mevcut Sayfa/Sütun Sonlarını Görüntüle.
SpaceForUL { get; set; }Altı çizili Doğu Asya metni için taban çizgisinin altına ek boşluk ekleyin.
SpacingInWholePoints { get; set; }Metni Sadece Tam Noktalar Halinde Genişlet/Sıkıştır.
SplitPgBreakAndParaMark { get; set; }Sayfa Sonundan Sonra Paragraf İşaretini Her Zaman Sayfaya Taşı.
SubFontBySize { get; set; }Yazı Tipi Değişimi Sırasında Yazı Tipi Boyutunun Önceliğini Artır.
SuppressBottomSpacing { get; set; }Sayfadaki Son Satırın Tam Satır Yüksekliğini Yoksay.
SuppressSpacingAtTopOfPage { get; set; }Sayfadaki İlk Satır için Minimum Satır Yüksekliğini Yoksay.
SuppressSpBfAfterPgBrk { get; set; }Sayfa Sonundan Sonraki İlk Satırda Boşluk Kullanmayın.
SuppressTopSpacing { get; set; }Sayfadaki İlk Satır için Minimum ve Tam Satır Yüksekliğini Yoksay.
SuppressTopSpacingWP { get; set; }WordPerfect 5.x Satır Aralığını Taklit Et.
SwapBordersFacingPgs { get; set; }Tek Numaralı Sayfalarda Paragraf Kenarlıklarını Değiştir.
SwapInsideAndOutsideForMirrorIndentsAndRelativePositioning { get; set; }Ayna girintileri ve bağıl konumlandırma için iç ve dış kısımların değiştirilmesini belirtir.
TransparentMetafiles { get; set; }Meta dosya resimlerinin arkasındaki alanın boşaltılmayacağını belirtir.
TruncateFontHeightsLikeWP6 { get; set; }WordPerfect 6.x Yazı Tipi Yüksekliği Hesaplamasını Taklit Et.
UICompat97To2003 { get; set; }Word97-2003 ile uyumlu olmayan kullanıcı arayüzü işlevselliğini devre dışı bırakmak için doğru. Varsayılan değerYANLIŞ .
UlTrailSpace { get; set; }Tüm Son Boşlukların Altını Çiz.
UnderlineTabInNumList { get; set; }Karakteri Takip Eden Numaralandırmayı Altı Çizili Olarak Takip Eder.
UseAltKinsokuLineBreakRules { get; set; }Doğu Asya Satır Sonu Kurallarının Alternatif Kümesini Kullanın.
UseAnsiKerningPairs { get; set; }Fontlardan ANSI Kerning Çiftlerini Kullanın.
UseFELayout { get; set; }Doğu Asya/Karmaşık Komut Dosyası Düzeni Kodunu Atlamayın.
UseNormalStyleForList { get; set; }Madde İşaretli/Numaralandırılmış Metne Liste Paragraf Stilini Otomatik Olarak Uygulamayın.
UsePrinterMetrics { get; set; }Belgeleri Görüntülemek İçin Yazıcı Ölçümlerini Kullanın.
UseSingleBorderforContiguousCells { get; set; }Tablo Kenarlığı Çakışmaları İçin Basitleştirilmiş Kuralları Kullanın.
UseWord2002TableStyleRules { get; set; }Word 2002 Tablo Stili Kurallarını Taklit Et.
UseWord2010TableStyleRules { get; set; }Word2010 tablo stili kurallarının kullanılacağını belirtir.
UseWord97LineBreakRules { get; set; }Word 97 Doğu Asya Satır Sonu’nu taklit edin.
WPJustification { get; set; }WordPerfect 6.x Paragraf Hizalamasını Taklit Et.
WPSpaceWidth { get; set; }WordPerfect 5.x’te yapıldığı gibi bir boşluğun genişliğinin ayarlanıp ayarlanamayacağını belirtir.
WrapTrailSpaces { get; set; }Satır Sarma Son Boşluklar.

yöntemler

İsimTanım
OptimizeFor(MsWordVersion)Belirli MS Word sürümleri için belge içeriklerinin ve Aspose.Words’ün varsayılan davranışının iyileştirilmesine olanak tanır.

Örnekler

Bir metin kutusunun metin içeriğinin dikey olarak nasıl hizalanacağını gösterir.

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

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

// "VerticalAnchor" özelliğini "TextBoxAnchor.Top" olarak ayarlayın
// Bu metin kutusundaki metni şeklin üst tarafıyla hizala.
// "VerticalAnchor" özelliğini "TextBoxAnchor.Middle" olarak ayarlayın
// Bu metin kutusundaki metni şeklin ortasına hizala.
// "VerticalAnchor" özelliğini "TextBoxAnchor.Bottom" olarak ayarlayın
// Bu metin kutusundaki metni şeklin altına hizala.
shape.TextBox.VerticalAnchor = verticalAnchor;

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

// Metin kutularının içindeki metnin dikey hizalanması Microsoft Word 2007'den itibaren kullanılabilir.
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2007);
doc.Save(ArtifactsDir + "Shape.VerticalAnchor.docx");

Kaydedilen bir belgenin uyması gereken OOXML uyumluluk spesifikasyonunun nasıl ayarlanacağını gösterir.

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

// Uyumluluk seçeneklerini Microsoft Word 2003 ile uyumlu olacak şekilde yapılandırırsak,
// Bir resim eklemek, VML kullanılarak şeklinin tanımlanmasını sağlayacaktır.
doc.CompatibilityOptions.OptimizeFor(MsWordVersion.Word2003);
builder.InsertImage(ImageDir + "Transparent background logo.png");

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

// "ISO/IEC 29500:2008" OOXML standardı VML şekillerini desteklemez.
// SaveOptions nesnesinin "Compliance" özelliğini "OoxmlCompliance.Iso29500_2008_Strict" olarak ayarlarsak,
 // Bu nesneyi geçirirken kaydettiğimiz her belgenin o standarda uyması gerekecektir.
OoxmlSaveOptions saveOptions = new OoxmlSaveOptions
{
    Compliance = OoxmlCompliance.Iso29500_2008_Strict,
    SaveFormat = SaveFormat.Docx
};

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

// Kaydedilen belgemiz, "ISO/IEC 29500:2008" OOXML standardına uymak için şekli DML kullanarak tanımlar.
doc = new Document(ArtifactsDir + "OoxmlSaveOptions.Iso29500Strict.docx");

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

Microsoft Word’ün farklı sürümleri için belgenin nasıl optimize edileceğini gösterir.

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

    // Bu nesne, her belgeye özgü geniş bir bayrak listesi içerir
    // Microsoft Word'ün eski sürümleriyle geriye dönük uyumluluğu kolaylaştırmamızı sağlar.
    CompatibilityOptions options = doc.CompatibilityOptions;

    // Boş bir belge için varsayılan ayarları yazdır.
    Console.WriteLine("\nDefault optimization settings:");
    PrintCompatibilityOptions(options);

    // Bu ayarlara Microsoft Word'de "Dosya" -> "Seçenekler" -> "Gelişmiş" -> "Uyumluluk seçenekleri..." yoluyla erişebiliriz.
    doc.Save(ArtifactsDir + "CompatibilityOptions.OptimizeFor.DefaultSettings.docx");

    // Belirli bir Microsoft Word sürümüyle en iyi uyumluluğu sağlamak için OptimizeFor yöntemini kullanabiliriz.
    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>
/// Bir belgenin uyumluluk seçenekleri nesnesindeki tüm bayrakları duruma göre gruplandırır, ardından her grubu yazdırır.
/// </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);
}

Ayrıca bakınız