Liste seviyelerinden özel sekme duraklarını kaldırmak, Word belgelerindeki liste düzeni üzerinde ayrıntılı kontrol sağlar. Removing List Level Tab Stops özelliği, daha önce ayarlanmış herhangi bir sekme durakını temizleyen basit bir ListLevel.RemoveTabStop() yöntemi ekler. Bu makale, SDK’yı kurmayı, bir liste oluşturmayı, sekme duraklarını kaldırmayı ve güncellenmiş belgeyi kaydetmeyi adım adım gösterir.

Word Belgesinde Liste Düzeyindeki Sekme Duraklarını Neden Kaldırmalısınız

Word listeleri genellikle liste numarasını veya madde işaretini metinle hizalayan varsayılan bir sekme durağına dayanır. Bir belge programlı olarak oluşturulduğunda, belirli bir görsel hizalama elde etmek için özel bir sekme durağı ekleyebilirsiniz. Daha sonra iş gereksinimleri değişebilir veya aynı şablonu farklı bir düzen için yeniden kullanmanız gerekebilir. Sekme durağını silmek için belgeyi manuel olarak düzenlemek zaman alıcı ve hataya açıktır. ListLevel.RemoveTabStop() ile liste seviyesini varsayılan davranışına programlı olarak geri döndürebilir, manuel müdahale olmadan oluşturulan belgeler arasında tutarlılığı sağlayabilirsiniz.

ListLevel API’ye Giriş

Aspose.Words for .NET, Word belgelerini manipüle etmek için zengin bir nesne modeli sağlar. ListLevel sınıfı, bir listedeki tek bir seviyeyi temsil eder (örneğin, numaralı bir listenin birinci seviyesi). 26.7 sürümünden itibaren, sınıf RemoveTabStop() metodunu içerir; bu metod, o seviyede ayarlanmış herhangi bir özel sekme durağını temizler.

Başlamak için, NuGet’ten Aspose.Words paketini yükleyin:

Install-Package Aspose.Words

Ürün hakkında daha fazla bilgi edinebilirsiniz Aspose.Words for .NET ürün sayfası. Ayrıntılı dokümantasyon Aspose.Words .NET dokümantasyonu adresinde mevcuttur ve tam API referansını burada keşfedebilirsiniz.

Tek Bir Liste Seviyesinden Özel Sekme Durdurucusunu Kaldır

Adım‑adım Öğretici

  1. Yeni bir Document ve DocumentBuilder oluşturun. Document nesnesi Word dosyasını bellekte tutar, DocumentBuilder ise içeriğin oluşturulmasını basitleştirir.
  2. Varsayılan numaralı liste formatını uygulayın. Bu, önceden tanımlı bir seviye ve sekme durağı olan bir liste sağlar.
  3. Birkaç liste öğesi yazın. Öğeler liste biçimlendirmesini devralır.
  4. builder’dan mevcut ListLevel‘ı alın. Bu, az önce oluşturduğumuz seviyedir.
  5. ListLevel üzerinde RemoveTabStop() metodunu çağırın. Bu, özel sekme durağını temizler.
  6. Belgeyi kaydedin değişikliği doğrulamak için.

Aşağıdaki örnek, C# ve Aspose.Words kullanarak bir liste seviyesinden özel bir sekme durağını nasıl kaldıracağınızı gösterir.

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Create a list with default formatting
builder.ListFormat.ApplyNumberDefault();
builder.Writeln("Numbered list item 1");
builder.Writeln("Numbered list item 2");

// Get the list level and remove its tab stop
ListLevel listLevel = builder.ListFormat.ListLevel;
listLevel.RemoveTabStop();

doc.Save("Paragraph.RemoveTabStopFromListLevel.docx");

Nasıl Çalışır

  • builder.ListFormat.ApplyNumberDefault() oluşturucuyu, Word tarafından tanımlanan varsayılan liste stilini kullanan numaralı liste bağlamına geçirir. Bu, dolaylı olarak yeni bir List nesnesi ve birinci seviye için karşılık gelen bir ListLevel oluşturur.
  • builder.Writeln(...) iki liste öğesi yazar. Oluşturucu liste modunda olduğundan, her çağrı otomatik olarak uygun liste numarasını ekler ve metni seviyenin sekme durağına göre hizalar.
  • builder.ListFormat.ListLevel mevcut liste seviyesi (bu durumda seviye 0) için biçimlendirmeyi kontrol eden ListLevel örneğini döndürür.
  • listLevel.RemoveTabStop() liste seviyesi oluşturulduğunda ayarlanan özel sekme durağını temizler. Bu çağrıdan sonra, liste Word’ün varsayılan sekme durağını kullanır; genellikle seviyenin sol girintisinde bulunur.
  • doc.Save(...) bellek içindeki belgeyi Paragraph.RemoveTabStopFromListLevel.docx adlı bir dosyaya yazar. Dosyayı Microsoft Word veya uyumlu bir görüntüleyicide açın; numaraların ve metnin artık varsayılan sekme durağı kullanılarak hizalandığını göreceksiniz.

Not: Bu kod örneği resmi Aspose.Words sürüm notlarından alınmıştır ve bir sandbox ortamında çalıştırılmamıştır. Üretimde kullanmadan önce kendi geliştirme ortamınızda doğrulayın.

Bir Belgede Tüm Liste Düzeylerindeki Sekme Duraklarını Kaldır

Birçok gerçek‑dünya senaryosunda bir belge birden fazla liste içerir ve her birinin birkaç seviyesi vardır. Sadece bir seviyeden sekme durak noktasını kaldırmak yeterli olmayabilir. Aşağıdaki kod parçacığı, bir belgedeki tüm listeler üzerinde nasıl yineleme yapılacağını ve her seviyedeki sekme durak noktasının nasıl temizleneceğini gösterir.

// Load an existing document that contains multiple lists
Document doc = new Document("Input.docx");

// Iterate through every list in the document
foreach (List list in doc.Lists)
{
    // Each list can have multiple levels (0‑8). Iterate them.
    foreach (ListLevel level in list.ListLevels)
    {
        // Remove any custom tab stop for this level
        level.RemoveTabStop();
    }
}

// Save the updated document
doc.Save("Output_NoTabStops.docx");

Kodun açıklaması

  • new Document("Input.docx") mevcut bir Word dosyasını yükler ve bu dosya birden fazla liste içerebilir.
  • doc.Lists belge içindeki her ayrı listeyi temsil eden List nesnelerinin bir koleksiyonunu döndürür.
  • list.ListLevels o liste için mevcut olan dokuz seviyeye (0‑8) erişim sağlar. Bir seviye kullanılmasa bile, koleksiyon hâlâ varsayılan biçimlendirmeye sahip bir ListLevel örneği içerir.
  • İç döngüde, her seviyede level.RemoveTabStop() çağrılır; bu, belgede hiçbir özel sekme durağının kalmamasını garanti eder.
  • Son olarak, doc.Save("Output_NoTabStops.docx") temizlenmiş belgeyi yazar.

Bu yaklaşım, oluşturulan raporların bir topluluğu boyunca tutarlı bir liste düzeni uygulamanız gerektiğinde veya dış kaynaklardan alınan belgeleri normalleştirirken özellikle faydalıdır.

Programlı Olarak Tab Stop’ı Eklemek ve Sonra Kaldırmak

Bazen geçici bir düzen için özel bir sekme durağı eklemeniz, bazı işlemler yapmanız ve ardından varsayılan ayara geri dönmeniz gerekebilir. SDK, ListLevel.TabStops.Add(double position) ile bir sekme durağı eklemenizi sağlar. Geçici biçimlendirme tamamlandıktan sonra, temizlemek için RemoveTabStop() metodunu çağırabilirsiniz.

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

builder.ListFormat.ApplyNumberDefault();
builder.Writeln("Temporarily aligned item 1");

// Add a custom tab stop at 72 points (1 inch)
ListLevel level = builder.ListFormat.ListLevel;
level.TabStops.Add(72);

builder.Writeln("Item with custom tab stop");

// Later, remove the custom tab stop
level.RemoveTabStop();

builder.Writeln("Item after removing tab stop");

doc.Save("TempTabStopDemo.docx");

Kodun açıklaması

  • Belgeyi oluşturup numaralı bir liste uyguladıktan sonra, ilk öğeyi yazarız.
  • level.TabStops.Add(72) 72 puanda (tam bir inç) özel bir sekme durağı ekler. Sonraki liste öğesi metnini bu konumda hizalar.
  • Geçici biçimlendirme artık gerekli olmadığında, level.RemoveTabStop() özel sekme durağını temizler ve sonraki öğelerin varsayılan hizalamaya geri dönmesine neden olur.
  • Son Writeln kaldırmanın etkisini gösterir.

Bu desen, tek seferlik bir ayarlamaya ihtiyacınız olduğunda—örneğin, belirli bir sayfa düzeni için bir listedeki başlığı hizalamak—belgenin geri kalanını temiz tutarken kullanışlıdır.

Ücretsiz Lisans Al

Aspose, değerlendirme filigranlarını kaldıran ve geliştirme ve test için tam API erişimi sağlayan geçici ücretsiz bir lisans sunar. Bunu Aspose geçici lisans sayfası adresinden talep edebilirsiniz.

Ücretsiz Ek Kaynaklar

Sonuç

Bu öğreticide, Aspose.Words 26.7’de tanıtılan yeni ListLevel.RemoveTabStop() yönteminin nasıl kullanılacağını ele aldık. Özel sekme duraklarını temizleyerek liste hizalaması üzerinde kontrolü yeniden kazanır, belge şablonlarını basitleştirir ve oluşturulan Word dosyalarında tutarlı biçimlendirmeyi sağlarsınız. Örnekler, tek bir liste seviyesinde kaldırmayı, tüm belge boyunca toplu kaldırmayı ve geçici sekme durak ayarlamaları için bir desen göstermiştir. Bu teknikleri .NET uygulamalarınıza dahil etmek, Word otomasyonunuzu daha sağlam ve bakımını daha kolay hale getirecektir.

SSS

  1. ListLevel.RemoveTabStop() gerçekte neyi kaldırır?
    Yöntem, liste seviyesine tanımlanmış herhangi bir özel sekme durağını temizler ve seviyeyi belgenin stilinde tanımlı varsayılan sekme durağını kullanacak şekilde geri döndürür.

  2. Sekme durağını kaldırdıktan sonra Save() metodunu çağırmam gerekiyor mu?
    Evet. Değişiklikler bellekte yapılır, bu yüzden güncellenmiş liste biçimlendirmesini bir dosyaya kaydetmek için Document.Save() metodunu çağırmalısınız.

  3. Tek bir belgede tüm liste seviyelerinden sekme duraklarını kaldırabilir miyim?
    Kesinlikle. Belgedeki her List üzerinden ve ardından her ListLevel üzerinden iterasyon yaparak, gerektiğinde RemoveTabStop() çağırabilirsiniz.

  4. RemoveTabStop() madde işaretli listeler ve numaralı listeler için de destekleniyor mu?
    Evet. Yöntem, bir ListLevel‘ın madde işareti, sayı veya çok seviyeli biçim olup olmadığına bakılmaksızın çalışır.

  5. Özel bir sekme durağını kaldırmak mevcut liste öğelerinin girintisini etkiler mi?
    Sadece sekme durağı konumu değişir. Liste seviyesinin sol girintisiyle tanımlanan genel girinti değişmeden kalır, bu yüzden liste öğeleri görsel hiyerarşilerini korur.

  6. ListLevel.RemoveTabStop() kullanmak için ücretli bir lisansa ihtiyacım var mı?
    API, ücretsiz geçici lisansla kullanılabilir, ancak üretim ortamı için Aspose’tan tam bir lisans almanız gerekir.

Devamını Oku