Revisions
Revisions
Bu kılavuz, Aspose.Words FOSS for .NET kullanarak bir Word belgesindeki izlenen değişiklikleri nasıl inceleyeceğinizi, kabul edeceğinizi, reddedeceğinizi ve kaydedeceğinizi gösterir. Aspose.Words FOSS for .NET, Document.Revisions aracılığıyla bir Word belgesindeki izlenen değişiklikleri (revizyonları) inceleyebilir, kabul edebilir ve reddedebilir ve Document.StartTrackRevisions()/StopTrackRevisions() üzerinden düzenleme sırasında yeni izlenen değişiklikleri kaydedebilir.
İzlenen Değişiklikleri Okuma
Document.Revisions, belgedeki her Revision‘nin bir RevisionCollection‘ini döndürür; Range.Revisions aynı bilgiyi belirli bir aralığa sınırlamayı sağlar. Her Revision, değişikliği yapan kişiyi ve zamanı (Author, DateTime), değişikliğin türünü (RevisionType: Insertion, Deletion, FormatChange, StyleDefinitionChange, veya Moving), ve nerede uygulandığını (ParentNode, ParentStyle) raporlar. Document.HasRevisions, yüklü bir belgenin hiç izlenen değişikliği olup olmadığını önceden bildirir.
Revizyonları Kabul Etme ve Reddetme
Revision.Accept() veya Revision.Reject() çağırarak tek bir izlenen değişikliği çözümlersiniz, ya da tüm koleksiyon üzerinde bir kerede RevisionCollection.AcceptAll() / RejectAll() ile çalışırsınız. Document.AcceptAllRevisions(), tek bir çağrıyla tüm revizyonları kabul eden belge düzeyinde bir kolaylıktır. Bir alt kümesini seçerek kabul etmek veya reddetmek için IRevisionCriteria.IsMatch(revision) uygulayın ve onu RevisionCollection.Accept(criteria) ya da Reject(criteria)‘ye iletin.
Revizyon Grupları
Aynı yazar ve aynı türden ardışık revizyonlar, bir RevisionGroup olarak birlikte gösterilir — tek bir revizyon için Revision.Group üzerinden erişilebilir, ya da belge içindeki her grup için RevisionCollection.Groups (bir RevisionGroupCollection) aracılığıyla. Her grup, birleşik Text, Author ve RevisionType değerlerini rapor eder.
Yeni İzlenen Değişiklikleri Kaydetme
Document.StartTrackRevisions(author) işlevini ya da StartTrackRevisions(author, dateTime) aşırı yüklemesini düzenlemeler yapmadan önce çağırın, böylece sonraki değişiklikler doğrudan uygulanmak yerine revizyon olarak kaydedilir; takibi sonlandırmak için StopTrackRevisions() çağırın. Document.TrackRevisions özelliği, takibin şu anda etkin olup olmadığını yansıtır.
Orijinal ve Son İçeriği Görüntüleme
Document.RevisionsView, revizyonlar mevcut olduğunda belgenin Original ya da Final durumunda (bir RevisionsView değeri) sunulup sunulmayacağını kontrol eder, alttaki revizyon verilerini değiştirmeden.
İpuçları ve En İyi Uygulamalar
- İzlenen değişiklik olmayan belgelerde gereksiz işi atlamak için
Document.Revisionsüzerinde yineleme yapmadan önceDocument.HasRevisions‘ı kontrol edin. - Manuel olarak filtreleme yapıp
Revision.Accept()‘ı tek tek çağırmak yerine, özel birIRevisionCriteriaileRevisionCollection.Accept(criteria)/Reject(criteria)‘ı tercih edin. RevisionGroup, değişikliklerin okunabilir bir özetini sunmak için faydalıdır — ardışık aynı yazar, aynı tip revizyonları gruplayarak her eklenen karakterin ayrı bir giriş olarak ele alınması önlenir.- İlgisiz düzenlemelerin izlenen değişiklikler olarak kaydedilmemesi için
StartTrackRevisions()her zaman daha sonraki birStopTrackRevisions()çağrısı ile eşleştirilmelidir.
Yaygın Sorunlar
| Sorun | Neden | Düzeltme |
|---|---|---|
Document.Revisions düzenlemelerden sonra boş | StartTrackRevisions() düzenlemeden önce hiç çağrılmadı | Takip edilmesini istediğiniz düzenlemeleri yapmadan önce StartTrackRevisions(author) çağırın |
RevisionCollection.Accept(criteria) hiçbir şey kabul etmez | IRevisionCriteria.IsMatch() herhangi bir revizyonla eşleşmiyor | İlk olarak gerçek Revision.Author/RevisionType/ParentNode değerlerine karşı kriter mantığını doğrulayın |
Belge, AcceptAllRevisions() sonrasında hâlâ izlenen değişiklik işaretlemesini gösteriyor | Durumu görüntüle, revizyon verisini değil | Çözülmüş içerik görünümüne ihtiyacınız varsa Document.RevisionsView değerini Final olarak ayarlayın |
FAQ
Bir belgenin izlenen değişiklikleri olup olmadığını nasıl kontrol ederim?
Document.HasRevisions‘ı okuyun — Document.Revisions en az bir Revision içeriyorsa true olur.
Revision.Accept() ile RevisionCollection.AcceptAll() arasındaki fark nedir?
Revision.Accept() belirli bir revizyonu çözer; RevisionCollection.AcceptAll() (veya Document.AcceptAllRevisions()) koleksiyondaki tüm revizyonları bir kerede çözer.
Belirli bir yazar tarafından yapılan yalnızca revizyonları nasıl kabul ederim?
IRevisionCriteria.IsMatch(revision) öğesini revision.Author‘i kontrol etmek için uygulayın, ardından bu uygulama ile RevisionCollection.Accept(criteria)‘yi çağırın.
Kendi düzenlemelerimi izlenen değişiklikler olarak nasıl kaydederim?
Düzenlemeleri yapmadan önce Document.StartTrackRevisions(author)‘ı çağırın, işiniz bittiğinde Document.StopTrackRevisions()‘i çağırın.
Mevcut revizyon türleri nelerdir?
RevisionType, Insertion, Deletion, FormatChange, StyleDefinitionChange ve Moving‘i tanımlar.
API Reference Özeti
| Sınıf / Metot | Açıklama |
|---|---|
Document.Revisions | Belgedeki tüm izlenen değişikliklerin RevisionCollection |
Revision | Bir izlenen değişiklik: Author, DateTime, RevisionType, Accept(), Reject() |
RevisionCollection | AcceptAll(), RejectAll(), Accept(criteria), Reject(criteria), Groups |
RevisionGroup / RevisionGroupCollection | Ardışık aynı yazar, aynı tür revizyonlar bir arada gruplanır |
IRevisionCriteria | Seçici kabul/ret için özel koşul (IsMatch(revision)) |
Document.StartTrackRevisions() / StopTrackRevisions() | Yeni düzenlemeleri izlenen değişiklikler olarak kaydet |
Document.RevisionsView | Original veya Final revize edilmiş içeriğin sunumu |